我们的实时聊天服务由客户端socket.io 连接组成,这些连接始终会“随机”客户端断开连接,并在服务器端“传输关闭”断开连接。我们偶尔会看到“ping 超时”和“命名空间断开”,这分别发生在服务器无法再 ping 客户端和用户注销时。不过,我们正在努力理解为什么会发生“传输关闭”断开连接。
这是客户端用于连接的套接字选项,
var socketOptions = {
transports: ['websocket'],
query: 'token=' + JSON.stringify(token) + '&member=' +
JSON.stringify(memberService.currentMember) + '&isBrowser=' +
isBrowser + '&isBrowserFocused=' + isBrowserFocused,
reconnectionAttempts: 5
}
有什么想法吗?
谢谢!
最佳答案
我认为您应该使用“socket.io-client”检查“socket.io”的版本。 如果服务器/客户端版本不匹配,连接会非常不稳定。
我建议客户端简单地使用 CDN,如下所示。
<script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.3/socket.io.slim.js"></script>
@ref:https://cdnjs.com/libraries/socket.io
希望对您有所帮助。
关于node.js - socket.io - 传输关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44654624/