我有一个expressjs服务器代码,它侦听套接字端口,如下所示。
websocket.on('connection', (socket) => {
console.log('A client just joined on', socket.id);
websocket.on('messageIM', (message) => {
console.log('msg:'+message)
});
});
我的客户端应用程序是一个本机移动项目,其中包含如下代码:
constructor(props) {
super(props);
this.socket = SocketIOClient('http://192.168.140.51:3000/');
}
然后我获得客户端连接“在***上刚刚加入客户端”在服务器控制台上登录,表示与服务器的连接成功。但是当我发出一些变量时..服务器端什么也不会发生!...
call()=>{
this.socket.emit('messageIM','Hi server')
}
表示当我在call()
函数上方调用时,服务器中没有任何反应。
这是我在客户端和服务器端编写的代码,如果您有一定的经验,请给予帮助。
答案 0 :(得分:1)
好像您使用了错误的变量来监听。连接事件返回您要使用的套接字。将websocket.on('messageIM'
重命名为socket.on('messageIM'
websocket.on('connection', socket => {
console.log('A client just joined on', socket.id);
socket.on('messageIM', message => {
console.log(`msg: ${message}`)
});
});