`
kingquake21
  • 浏览: 262270 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

JSON-RPC、XML-RPC、SOAP三者的关系

阅读更多

JSON-RPC规范:http://json-rpc.org/wiki/specification

XML-RPC规范:http://www.xmlrpc.com/spec

SOAP规范:http://www.w3.org/TR/2000/NOTE-SOAP-20000508/#_Toc478383487

参考:http://weblog.masukomi.org/writings/xml-rpc_vs_soap.htm

三者都是为了实现RPC中的消息交换,并且都没有定义传输协议。不过为了更方便在网络中传输,而且由于HTTP的无状态性,都使得HTTP为这三者的常用的传输协议。下面例子也是基于HTTP协议的

XML-RPC和SOAP都是基于XML格式的消息交换:

XML-RPC非常简单,定义了几种基本类型、匿名结构体、匿名数组;

SOAP除了基本类型、命名结构体、命名数组以外,还可以自定义类型,能使用多态的方法调用方式

而JSON-RPC是基于JSON格式的消息交换,JSON比XML更加轻巧,并且非常容易在页面JS中使用,其他特点与XML-RPC类似

下面是使用这几种协议发送请求的例子:

XML-RPC

SOAP:

JSON:

分享到:
评论

相关推荐

    Asp.Net及相关技术介绍

    XML-RPC,SOAP,REST, SOA Asp.Net WebForm,WebService, WCF Asp.Net WebAPI, Asp.Net MVC,JSON Asp.Net Routing, MVVM,DOM HttpModule, HttpHandler, Ajax Jquery JS,Knockout JS 内容提纲如下...

    PHP Web 2.0 Mashup Projects.pdf

    we cover two basic web services to get our feet wet — XML-RPC and REST. The Internet UPC database is an XML-RPC-based service, while Amazon uses REST. Preface [ 2 ] We will create code to call XML-...

    gSOAP Toolkit:用于C和C ++的Web服务和XML数据绑定的开发工具包-开源

    与Apache模块和IIS扩展的Web服务器集成,具有模式验证的高性能XML处理,快速的MIME / MTOM流,SOAP和REST Web API开发,WS -*协议(WS-Security,WS-Policy,WS-ReliableMessaging等),XML-RPC和JSON。 根据GPLv2...

    gSOAP工具包:广泛的便携式C和C ++软件套件-开源

    与Apache模块和IIS扩展的Web服务器集成,具有模式验证的高性能XML处理,快速的MIME / MTOM流,SOAP和REST Web API开发,WS -*协议(WS-Security,WS-Policy,WS-ReliableMessaging等),XML-RPC和JSON。 根据GPLv2...

    基于Web的连接框架CDIF.zip

    CDIF是世界上第一种基于REST和JSON的SOA软件框架,提供了与基于XML的WSDL语言和SOAP协议同等抽象能力、但简洁得多的基于JSON的实现,也非常适合用于描述微服务架构的API接口。CDIF提供了完整的服务注册和发现能力,...

    Hprose 全名是高性能远程对象服务引擎.rar

    基于 HTTP 协议的(例如基于文本的 SOAP(XML)、Rest(JSON),基于二进制 Hessian(Binary)) 基于 TCP 协议的(通常会借助 Mina、Netty 等高性能网络框架) RPC (远程过程调用) 是什么 简单的说,RPC 就是从一...

    PHP.Web.Services.APIs.for.the.Modern.Web.2nd.Edition

    RPC and SOAP Services Chapter 8. REST Chapter 9. Webhooks Chapter 10. HTTP Tools Chapter 11. Maintainable Web Services Chapter 12. Making Service Design Decisions Chapter 13. Building a Robust ...

    趣谈网络协议 pdf .zip

    目录 00开篇词:想成为技术牛人?先搞定网络协议! 01为什么要学习网络协议?...33基于XML的SOAP协议 34基于JSON的RESTful接口协议 35二进制类RPC协议 36跨语言类RPC协议 .............................

    PHP5中文参考手册

    XML-RPC — XML-RPC 函数 XMLReader — XMLReader functions XMLWriter — XMLWriter Functions XSL — XSL functions XSLT — XSLT Functions YAZ — YAZ Functions YP/NIS — YP/NIS Functions Zip — Zip File ...

    PHP5 完整官方 中文教程

    XML-RPC — XML-RPC 函数 XMLReader — XMLReader functions XMLWriter — XMLWriter Functions XSL — XSL functions XSLT — XSLT Functions YAZ — YAZ Functions YP/NIS — YP/NIS Functions Zip — Zip File ...

    suite-n-sour

    适用于 Node.js 的 NetSuite SOAP、网上商店、离线客户端、用户界面和 XML/JSON RPC 自动化。 使用 SnSour 的多协议方法将您的 SuiteScript 基准测试提升到王国! 安装 $ npm install suite-n-sour 最简单的方法...

    java开源包1

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包10

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包11

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包2

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包3

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包6

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包5

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包4

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

    java开源包8

    多协议扩展支持(REST, RPC, SOAP, etc) Rails3消息队列系统 Sidekiq Sidekiq 为 Rails 3 应用程序提供一个高效的消息队列系统。 Java文件上传组件 COS FAT文件系统读写类库 fat32-lib fat32-lib 是一个用来读写...

Global site tag (gtag.js) - Google Analytics