2
我正在研究一個node.js項目,該項目利用了Socket.IO,並且遇到了一個問題讓我的思考問題得到了解決。這就是我要做的:Socket.IO範圍問題(Node.JS)
var io = require('socket.io').listen(80);
session_manager = require('./includes/session_manager');
// client joins the socket server
io.sockets.on('connection', function(client) {
client.on('X.Session.join', function(session_id, client) {
session_manager.joinSession(session_id, function(err, session) {
// do whatever
});
});
// BRING IN MORE LISTENERS/EMITTERS?
require('someModuleIBuild');
});
正如你看到的我基本上建立初始連接時,通過一個管理類加入一個會話(所以我知道是誰發出來的這屆),然後我試圖動態地引入一些自定義的東西,也將通過套接字連接發射和偵聽。
那麼如何從我的自定義模塊的範圍內引用此當前連接?我所見過的所有例子都在一個文件中具有「on」和「emit」功能,看起來它很快就會失控。 (這是我的第一個node.js項目,第一個基於套接字的項目,第一個主要是javascript項目....等),但任何幫助,將不勝感激。
我昨天剛遇到了同樣的問題。我目前正在使用的解決方案是讓我的自定義模塊發出事件,然後讓socket.io監聽任何此類事件......但我不確定這是否是最好的方法:\ –