websocket 响应似乎被切断

websocket 响应似乎被切断

因此,我的 websocket 服务器(socket.io)正在向通过其 web 浏览器(例如 Firefox)连接的客户端发送 JSON 数据。

当我发送简短的回复时它工作正常。

但是,当我发送较大的 JSON 响应时,响应长度始终为 219265 个字符——它会切断!!!

因此,我无法解析 JSON 数据,因为它在传输完成之前就中断了!

我能做些什么?

我也尝试在 Chrome 上这样做 - 它也会在 219265 个字符后中断。

我的 Web 服务器正在运行 Apache2。Websocket 服务器 (socket.io) 正在监听服务器的端口 8002,Apache 会将所有 Websocket 请求重定向到 8002。它对于短响应一直运行良好。

答案1

我想到了...

这不是 Apache2 的问题,也不是 socket.io 的问题......

这与 nodejs 子进程有关,它的默认 stdout 缓冲区长度设置为 200*1024(204800)。

http://nodejs.org/api/child_process.html#child_process_child_process_exec_command_options_callback

我所要做的就是将“maxBuffer”设置为一个更大的数字,一切都很好......

唷!

相关内容