0

我已经成功实现了 nodejs 的 ws 包来设置 websocket 服务器。

一切工作正常,除非我尝试按照以下方式检查套接字可用性:

https://github.com/websockets/ws#how-to-detect-and-close-broken-connections

ws.ping(noop)方法总是导致以下错误:

Error: Parse Error
      at socketOnData (_http_server.js:480:20)
      at Socket.emit (events.js:187:15)
      at Socket.EventEmitter.emit (domain.js:441:20)
      at addChunk (_stream_readable.js:283:12)
      at readableAddChunk (_stream_readable.js:264:11)
      at Socket.Readable.push (_stream_readable.js:219:10)
      at TCP.onStreamRead (internal/stream_base_commons.js:94:17)

我已经尝试了几乎所有使用ws.ping()ws.ping('')甚至ws.ping(Buffer.alloc(0)),但无济于事。

ws 套接字是干净且正在运行的,我可以使用事件和ws.send()方法通过它发送和检索数据。只有 ping/pong 失败。我在客户端(浏览器)上使用本机 WebSocket 对象。

是否可能与我在noServer: true实例化 websocket wss 服务器时使用的事实有关?

谢谢你的帮助

4

0 回答 0