javascript - 通过 HTTP 进行实时双向 JSON-RPC 通信

标签 javascript http streaming comet json-rpc

我正在构建一个接受 HTTP 请求的 JSON-RPC 服务器。我想支持双向通信(客户端和服务器都可以发送请求),具体用例是发布/订阅架构,其中客户端发送 subscribe(X) 请求并接收 changed(X) 请求(几乎)实时。据我所知,有几种方法可以用 HTTP 实现:

  • 长轮询
  • WebSockets
  • 使用基于 cookie 的 session 模型轮询调用
  • 流式传输(保持 HTTP 连接打开)
  • 上述一些的组合

我正在寻找的是一种基于公认的互联网标准(如果可能)的解决方案,可从网络浏览器使用并且易于在客户端使用。到目前为止,我更喜欢流媒体(Twitter、CouchDB 就是这样做的),但我不确定浏览器和 JSON-RPC 库对它的支持程度如何。此外,可能还有其他我不知道的方法。

提前致谢。

最佳答案

我想你应该看看socket.io完成你的任务。如果您想观看作者的这段视频,您可以:“Socket.IO Workshop: Guillermo Rauch”。在两个服务器上作为客户端都很容易使用。我创建了一个简单示例 pubsub using redis on top of socket.io .

关于javascript - 通过 HTTP 进行实时双向 JSON-RPC 通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4823191/

相关文章:

javascript - 单击链接时如何复制网页的这一部分?

node.js - Content-Length header 是压缩字节还是未压缩字节的字节大小?

java - 在 Java 中读取包含数百万行的文件的最佳方法

video - 将实时 WebRTC 视频存储在 YouTube 中

javascript - 点击弹出不工作

javascript - 使用jQuery通过.submit()事件播放音频

javascript - 鼠标悬停完成后如何关闭切换?

http - 如何让 Wireshark 显示我的本地 HTTP 流量?

iphone - 通过 RTSP 将实时 H.264 视频流传输到 iPhone 确实有效!带示例

python - 如何在生成视频时在线流式传输视频以及失败的 CGI 方法