【发布时间】:2018-08-04 23:57:19
【问题描述】:
我正在用这个包https://github.com/MetinSeylan/Vue-Socket.io构建一个应用程序,其中node.js作为服务器,vue.js在前端
我正在从服务器向客户端发送大量数据(初始连接) Node.js 从 mongodb 加载数据。
所以在某些情况下,当我做一个
socket.emit()
连接中断(没有错误)并立即重新连接。这在一个无限循环中。
我发现问题曾经是由德语“元音变音”引起的,例如“ä、ö、ü”等。我通过这样做encodeURIComponent(JSON.stringify(myDataToSend))) 解决了这个问题,并在前端解码如下: JSON.parse(decodeURIComponent(payload))
所以现在这不再有帮助了,我不知道为什么。而且没有任何错误日志或我可以开始调试的东西,它只是断开并永远重新连接。
这会因为我要发送给客户的对象太大而发生吗? 我尝试一个接一个地以较小的包裹发送我的数据,但这并没有中断。我希望我能找到这样的问题。
感谢任何有关调试的建议或打包我的数据的想法。
【问题讨论】:
-
多少兆字节?
-
我发送了 493576 个字符。但是,我用 5066154 个字符向客户端发送了另一个包。 (大约 10 倍以上)而且这个不会造成任何问题!
-
服务器有错误吗?试着抓?你能对这些数据进行抽样吗?还有示例代码,怎么发送数据?
-
@stdob-- 感谢您的意见。我可以通过修复 vue-socket.io 的使用来解决这个问题。
标签: node.js sockets encoding vue.js socket.io