【问题标题】:Detection connections on Express.ioExpress.io 上的检测连接
【发布时间】:2015-10-12 03:33:46
【问题描述】:

我知道这里已经讨论过这个问题,但我无法让它发挥作用。 Express.io 中的文档非常分散。

我有一个正在运行的服务器,我想在有人访问它时设置一个事件。这是我现在的代码:

var express = require('express.io');
var io = require("socket.io").listen(https);
...
var app = express();

app = require('express.io')();
app.https(options).io();

app.io.route('connect', function (req) {
   console.log(req);
      });

而且它不工作.. 它只是没有检测到任何新的连接。这里有什么帮助吗?

【问题讨论】:

    标签: javascript server socket.io url-routing express.io


    【解决方案1】:

    您无法连接到服务器,因为您忘记调用监听方法。您也没有定义请求处理程序,因此您无法连接普通的 http(s) 请求。

    您定义了一个 IO.route,但要发送一个事件,您需要客户端的 socket.io 库。 git hub express.io 端有示例。为了更好地理解,我建议您阅读 express(不是 express.io)的介绍文档以了解什么是正常的 http(get、post、pull,...)路由以及如何启动服务器。

    你不需要socket.io lib的显式require和listen调用,express.io封装了它。

    缺少的行是

    app.listen(7076); // port = 7076 can be changed by your needs
    

    如果您想添加 http get 路由,请使用以下内容:

    app.get('/mypage', function(req, res) 
    {
       res.send("my Page content");
    })
    

    【讨论】:

    • 如果你不需要实时路由和双向事件处理,你可以使用plain express。它更易于使用和理解,是普通 http(s)、ajax 或 rest 访问的良好基础。我经常在客户端将它与 angularjs 一起使用。
    猜你喜欢
    • 2014-03-08
    • 2021-06-14
    • 2012-01-24
    • 2014-10-03
    • 2013-08-13
    • 2011-11-27
    • 2013-11-29
    • 2014-09-02
    • 1970-01-01
    相关资源
    最近更新 更多