首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >WebSocket请求-响应子协议

WebSocket请求-响应子协议
EN

Stack Overflow用户
提问于 2012-06-04 21:42:14
回答 5查看 48.7K关注 0票数 82

WebSocket提供了一种像人类说话一样的双向交流。客户端可以向服务器发送数据,服务器可以随时向客户端发送数据。但是,请求-响应行为如何呢?客户端可以向服务器发出请求并等待响应。Websocket似乎没有提供任何东西来将客户端数据(请求)链接到服务器数据(响应)。

这可能是子协议的工作,我对如何做到这一点有一些想法(随请求一起发送一个ID,并在超时时间内等待使用相同ID的响应)。

为了不重复发明轮子并节省一些时间,我在互联网上寻找了一个现有的解决方案,但我没有找到任何相关的东西(可能是糟糕的关键字)。

那么,有没有人知道这种工作,或者我错过了什么?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-06-04 22:13:49

为此,WebSocket应用程序消息传递协议(WAMP) https://wamp-proto.org/在原始WebSocket之上提供了Remote Call和PubSub (Publish & Subscribe)消息模式。

WAMP是一个合适的JSON子协议,使用WebSocket作为传输协议,使用WebSocket作为有效载荷格式。RPC是使用3条消息实现的,这些消息包含一个“调用ID”,用于将异步RPC服务器响应与客户端发起的过程调用相关联。

免责声明:我是WAMP和一些(开源) WAMP实现的作者。这是一个开放的倡议,其他人已经开始上船了。最终,应该有一个正确定义协议的WAMP RFC。但它仍处于早期阶段。

票数 54
EN

Stack Overflow用户

发布于 2013-02-13 23:16:51

我会使用JSON-RPC 2.0。

http://www.jsonrpc.org/specification

每条消息都是一个JSON对象。协议声明它是需要响应(与id耦合)的呼叫,还是需要通知的呼叫。

支持JSON-RPC的应用程序可以很容易地检查消息对象是否包含表示调用的方法,或者不包含表示响应的方法。

我将构建一个javascript库来处理websocket上的json rpc,并使用ajax作为备用…。

票数 14
EN

Stack Overflow用户

发布于 2012-07-20 02:37:56

看看SwaggerSocket,它是基于WebSockets协议的REST,所有主要的WebServer都支持它。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10882370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档