Alv*_*tor 5 rest json web-services
我们将使用JSON对象作为传输模式来实现Web服务.我们的目的是让第三方组织连接到我们的网络,为此我们计划使用标准化协议来简化未来的集成.
对于JSON,目前有两个规范:JSON-RPC和JSON-WSP.我想知道这两者之间的任何人的看法,如果你在我的鞋子里,你会用什么?现在,我看到JSON-RPC已经存在了一段时间,并且已经实现了多种语言.JSON-WSP还处于早期阶段,但它的目标是取代JSON-RPC(RFC正在开发中).从长远来看,我认为JSON-WSP将是一个很好的解决方案,但我可能错了.
这两个协议之间的主要区别在于JSON-WSP可以使用jsonwsp/description对象来描述它自己的服务方法.如果您希望您的客户能够"了解"您的Web服务并且可能提供动态客户端用户界面,可以在您更改服务方法时自动更改可视化,那么这很好.因此,服务器端更新可能非常容易分发.
JSON-WSP支持规范中的附件
JSON-RPC支持批处理方法调用 - 在一个请求中调用多个方法.您还可以执行无响应请求(通知)
JSON-RPC是两个协议中最早的,因此它有更多的实现和一个大型社区.
所以我想这一切都归结为你的需求.
如果您正在构建基于浏览器的应用程序,JSON-WSP使用官方javascript客户端提供了一种基于Ajax的高效机制.JavaScript json-wsp客户端解析服务描述并使用方法将1对1映射到json-wsp方法生成代理对象:
http://ladonize.org/index.php/Python_Example#JavaScript_JSON-WSP_client
为什么不使用休息?
如果您已经知道 JSON 类型的格式,请将其记录为各个资源的表示形式,然后通过 HTTP 提供对它们的访问。这样,您将受益于底层传输基础设施(缓存可能性、出色的工具等)。
在每个资源之间使用超链接以允许客户端在它们之间导航。这样,您的 API 的用户就不会受到基于合约的 RPC 机制的束缚,这对您来说很难发展,并且需要另一个工具包供您的客户使用。使用 REST 只需要一个 HTTP 库(它们一毛钱一打)和一个 JSON 解析器(它们已经需要)。此外,您以后随时可以添加其他编码选项(例如 XML),而对现有客户端的影响最小。
使用 JSON 并不意味着必须在 JSON-RPC 或 JSON-WSP 之间进行选择。使用长期建立的、超级简单的标准(例如 HTTP 和 JSON)来为您的 API 寻找最低公分母,并充分利用它们。一旦您开始在其中分层更多的规范和标准,您就会发现 API 的复杂性成比例增长。
| 归档时间: |
|
| 查看次数: |
5241 次 |
| 最近记录: |