My Express应用程序侦听HTTP和HTTPS:
var app = express()
, srv = http.createServer(app)
, ssl = https.createServer({ ... }, app);
我可以让socket.io监听其中一个服务器,但不能同时监听两者:
var io = require('socket.io').listen(srv); // now what about `ssl`?
如何创建单个socket.io实例同时监听HTTP和HTTPS服务器?我想进行一次io.emit(...)
调用,将消息发送到通过HTTP和HTTPS连接的客户端。
答案 0 :(得分:0)
根据阅读源(未经测试),您可以尝试以下一件事:
var engine = require('engine.io');
var httpsEIO = engine.attach(server.https, {path: '/socket.io'});
server.ws.bind(eio);
或在0.9-land中手动复制这些绑定: