【发布时间】:2014-04-08 10:37:30
【问题描述】:
我正在使用 node.js(express)+socket.io 制作一个应用程序,我想知道如何从外部使用作为 io.on('connection',function(socket){... 参数的套接字对象,例如 routes 文件夹中的路由文件
app.js
app.get('/foo/:id?', routes.foo);
路由/foo.js
exports.index = function(req, res){
//do something with socket such as socket.join()
};
任何想法或提示将不胜感激。
已编辑
我的目标是让访问'/foo/:id?' 的用户加入名为id?' 的socket.io 房间(https://github.com/LearnBoost/socket.io/wiki/Rooms)。
所以我想打电话给socket.join('req.params.id')
exports.index = function(req, res){
//HERE
};
【问题讨论】:
-
您可以通过
req.connection访问底层Socket。 -
@Joe 感谢您的评论。但是
Socket我说的是socket.io的回调参数。我已经偷看了req.connection 有什么虽然我看不到任何东西与其中的socket.io有关还是我错过了什么? -
req.connection 是 Node.js
socket对象。不确定 socket.io 有什么可用的,抱歉。