我正在构建一个通过 HTTP 接受请求的 JSON-RPC 服务器。我想支持双向通信(客户端和服务器都可以发送请求),具体的用例是发布/订阅架构,其中客户端发送请求并(几乎)实时subscribe(X)
接收请求。changed(X)
据我所知,有几种方法可以用 HTTP 实现这一点:
- 长轮询
- 网络套接字
- 使用基于 cookie 的会话模型轮询调用
- 流式传输(保持 HTTP 连接打开)
- 以上一些的组合
我正在寻找的是一种基于公认的互联网标准(如果可能)的解决方案,可从 Web 浏览器使用并且易于在客户端使用。到目前为止,我更喜欢流媒体(Twitter、CouchDB 就是这样做的),但我不确定浏览器和 JSON-RPC 库对它的支持程度如何。此外,可能还有其他我不知道的方法。
先感谢您。