我正在开发一个Node.js - Unity游戏,我使用套接字,让用户连接到游戏。我遇到了一个问题,比如它重新连接 - 断开连接就像团结中的循环一样。但是当我通过网络浏览器查看时,我没有遇到这样的问题。 最近还有一件事是我使用了一个端口(3011) - 这里工作正常并转移到另一个端口(3012无法正常工作)。我认为这是个案,但事实并非如此。
我使用的是节点版本v6.11.0(端口3011和3012)和 node.js(服务器端)的套接字版本2.0.3
任何人都可以帮助我吗? 这是示例代码
responseFrame
问题看起来像是
io.on('connection', function(socket)
{
console.log('User connected');
socket.on('disconnect', function(reason){
console.log('User disconnected',reason);
});
});
socket.on('joinroom', function(roomId)
{
console.log('player joined room: ' + roomId);
socket.join("room_"+roomId);
});
http.listen(3012, function(){
console.log('Started nodejs server');
initRoomActivity();
});
这里XXXX指的是同一个房间, 这里"客户端命名空间断开"是断开原因
答案 0 :(得分:0)
您使用的是npm库吗? 如果是,那么您可能已经升级了socket.io npm包
如果是,则尝试降级并再次尝试 不要尝试升级当前项目中使用的包
答案 1 :(得分:0)
将c#
socketOption
设置为700
TimeSpan miliSecForReconnect = TimeSpan.FromMilliseconds(700);
将您的server.js
更改为
var io = require('socket.io')(http, { pingInterval: 700 });
添加此ping间隔