【问题标题】:Express generator with socket.io configuration带有 socket.io 配置的 Express 生成器
【发布时间】:2016-12-12 12:11:23
【问题描述】:

下面的代码是我当前的配置,它有效,但我很困惑。

服务器端

var server = require("http").Server(express);  
var io = require("socket.io")(server);
server.listen(5000);
io.on('connection', function(client) {


});

安静

var socket = io.connect('http://localhost:5000');

为什么我们需要为应用程序的 5000 端口创建另一个套接字服务器? socket不能用3000吗?这是快递的运行端口。我删除了 server.listen('5000') 行并执行 server.listen() 并尝试在客户端连接到端口 3000 它不起作用。

【问题讨论】:

  • 您可以为您的 web 服务器使用与 socket.io 相同的端口,就像您在显示的代码中所做的那样(在端口 5000 上)。如果您需要有关不起作用的代码的帮助,您需要向我们展示该代码。 server.listen(5000); 正在启动您的快递服务器。你必须在那里放置一个端口。 var io = require("socket.io")(server); 正在将 socket.io 绑定到您的 Web 服务器。 var server = require("http").Server(express); 正在创建一个 Web 服务器并将快速请求处理程序绑定到它。
  • @jfriend00 新的 express 版本在 bin/www 中创建服务器,我删除了创建服务器行,它现在可以工作了。
  • 由于您没有向我们展示任何可以帮助我们实际回答您的问题或帮助之后的任何人的东西,而您现在似乎已经弄清楚了,也许您应该删除您的问题。跨度>

标签: javascript node.js sockets socket.io


【解决方案1】:

默认情况下 express 4 创建一个服务器并运行它 bin/www.我通过在该文件中注释掉 server.listen(port); 解决了这个问题。

【讨论】:

    猜你喜欢
    • 2015-05-01
    • 1970-01-01
    • 2016-09-04
    • 2016-10-20
    • 2018-05-06
    • 1970-01-01
    • 1970-01-01
    • 2013-12-24
    • 1970-01-01
    相关资源
    最近更新 更多