xml-rpc和soap区别
来源:互联网 发布:linux下查看进程的方法 编辑:程序博客网 时间:2024/05/12 23:31
最近一直有在搞远程通信方面,一些概念的保存记录整理。
XML-RPC, SOAP 的区别
在Web服务发展的初期,XML格式化消息的第一个主要用途是,应用于XML-RPC协议,其中RPC代表远程过程调用。在XML远程过程调用 (XML-RPC)中,客户端发送一条特定消息,该消息中必须包括名称、运行服务的程序以及输入参数。
XML-RPC只能使用有限的数据类型种类和一些简单的数据结构。人们认为这个协议还不够强大,于是就出现了SOAP——其最初的定义是简单对象访问协议。之后,大家逐渐意识到SOAP其实并不简单,而且也不需要必须使用面向对象语言,所以,现在人们只是沿用SOAP这个名称而已。
XML-RPC只有简单的数据类型集,取而代之,SOAP是通过利用XML Schema的不断发展来定义数据类型的。同时,SOAP也能够利用XML 命名空间,这是XML-RPC所不需要的。如此一来,SOAP消息的开头部分就可以是任何类型的XML命名空间声明,其代价是在系统之间增加了更多的复杂性和不兼容性。
随着计算机行业的觉醒,人们发现了基于XML的Web服务的商业潜力,于是,各家公司开始不断地发掘想法、观点、论据以及标准化尝试。W3C曾经设法以“Web服务活动”的名义来组织成果展,其中也包括实际做出SOAP的XML协议工作组(XML Protocol Working Group)。与Web服务有关的标准化成果(从某种程度上说与SOAP相关或者依赖于SOAP)的数量已经倍增了到了令人惊讶的程度。
最初,SOAP是作为XML-RPC的扩展而发展起来的,它主要强调的是,通过从WSDL文件中所获得的方法和变量名来进行远程过程调用。现在,通过不断进步,人们发现了更多的使用SOAP的方式,而不仅仅是采用“文件”方式——基本上是使用一个SOAP信封来传送XML格式化文件。无论如何,要掌握SOAP,了解WSDL所扮演的角色是最根本的。
SOAP数据包结构解析
SOAP的消息被称为一个SOAP Envelope,包括SOAP Header和SOAP Body。其中,SOAP Header可以方便的插入各种其它消息来扩充Web Service的功能,比如Security(采用证书访问Web Service),SOAP Body则是具体的消息正文,也就是Marshall后的信息。
SOAP调用的时候,也就是向一个URL(比如 http://api.google.com/search/beta2 )发送HTTP Post报文(根据SOAP规范,HTTP Get报文也可被支持),调用方法的名字在HTTP Request Header SOAP-Action中给出,接下来就是SOAP Envelope了。服务端接到请求,执行计算,将返回结果Marshall成XML,用HTTP返回给客户端。
- xml-rpc和soap区别
- XML-RPC, SOAP 的区别
- REST SOAP 和 XML-RPC
- RPC 和 SOAP 有什么区别?
- REST 和 SOAP、RPC 有什么区别?
- JSON-RPC,XML-RPC,SOAP
- XML-RPC & SOAP
- SOAP vs XML-RPC
- SOAP协议 XML-RPC
- XML-RPC、SOAP对比
- Webservice学习笔记四,XML-RPC与SOAP 区别
- SOAP、XML-RPC 以及 REST 之间的区别是什么?
- RPC/RMI/SOAP的区别
- 基于RPC的SOAP消息和基于Document的SOAP消息的区别
- [转载]XML-RPC vs. SOAP
- RMI/XML-RPC/JSON-RPC/SOAP概念比较
- JSON-RPC、XML-RPC、SOAP三者的关系
- RMI/XML-RPC/JSON-RPC/SOAP概念比较
- global:: 举例
- 开机回答自己的问题才能使用
- oracle创建用户语句
- SqlDataAdapter.UpdateCommand 属性(极易出错的地方)
- video scaler程序中出现的问题及解决方法
- xml-rpc和soap区别
- malloc 接口函数
- 关于Android下WIFI移植的一些指导文章
- Silverlight开发环境配置
- memcached简介
- Longest Ordered Subsequence
- JMS 传输和 SOAP 消息处理程序
- 性能结果分析与理解(关于90%响应时间、图表等)
- android通过MP3路径获取MP3的album