0

假设我们在一个只允许 HTTP 的网络上,将http模块用作net模块 (TCP) 套接字/流的最简单方法是什么?在两个节点服务器之间,我希望能够在另一端连续使用write()和接收这些数据。on('data',...)目前,我可以在每一端写入一次,然后后续写入似乎不会发送。

4

1 回答 1

1

HTTP 本质上是单向的。你能得到的最好的结果是两个单向通道,没有实时通信。

您可以使用服务器发送的事件 ( EventSource ),它是 HTML5 标准的一部分。它使用 HTTP 传输消息。您还应该查看类似于 tcp 套接字的websocket 。它们提供全双工实时通信。它们使用不同的 websocket 协议,但可以使用与 http 相同的端口。如果 websocket 没有被阻塞,你应该使用它。

这是两者之间的比较:WebSockets vs. Server-Sent events/EventSource

于 2013-08-13T06:01:34.370 回答