我的后端(nodejs)服务器通过System.loadLibrary("MyNative");
定义新的命名空间。它看起来像这样:
var clients = io.of('/clients')
我的python客户端看起来像这样:
clients.on('connection', function(socket) {
socket.on('descriptor', function(data) {
// do something cool here
}
});
运行此代码,服务器中的描述符方法永远不会被调用(我假设它不在from socketIO_client import SocketIO,
class ClientNameSpace(BaseNamespace):
def on_connect(self):
logger.info("connected")
socketIO.emit("descriptor", "some cool data")
socketIO = SocketIO('127.0.0.1', 80)
clientSocket = socketIO.define(ClientNameSpace, '/clients')
socketIO.wait()
命名空间中)。但我不能在/clients
内使用clientSocket
,因为它没有定义。我假设一旦ClientNameSpace
构造函数被激活就会激活该类,并且直到之后才会创建SocketIO()
。
答案 0 :(得分:0)
我认为您的设置不正确。尝试改为在clientSocket上调用emit,而且我认为这是定义至少一个回调的要求,不确定是否仍然如此。因此,定义一个clientSocket.on(“方法名称”,回调);