当前位置: 代码迷 >> 综合 >> SOAP vs XML-RPC
  详细解决方案

SOAP vs XML-RPC

热度:6   发布时间:2023-12-11 21:05:32.0

XML RPC 是一个用XML 消息执行RPC 的简单协议,服务请求使用XML 来编码,并通过HTTP  POST 发送,XML 响应被嵌入HTTP 响应主体。
  SOAP 是在计算机之间交换信息的基于XML 的协议,主要侧重于通过HTTP 传输RPC 。它利用了XML 的命名空间和XML 模式(XML Schema)
  XMLRPC 是启动Web 服务最容易的方法,在很多方面比SOAP 更简单易用,但不同于SOAP 的是,XMLRPC 没有相应的服务描述语法,这妨碍了XMLRPC 服务的自动调用。

XML-RPC SOAP 中客户机与服务器之间的交互是一样的。

SOAP 有明显的优越性:它非常适合异步通信和针对松耦合的客户机和服务器。但这种好处会招致一些不利结果。必须做大量的运行时检查,而且开发人员丧失了许多可以确保方法和参数是正确的编译时便利。

可以认为SOAPXML-RPC 的高级版本,二者基于相同的原理:利用HTTP + XML 封装进行RPC 调用。

 

Feature

XML-RPC

SOAP

basic scalars

yes

yes

structs

yes

yes

arrays

yes

yes

named structs and arrays

no

yes

detailed fault handling

yes

yes

short learning curve

yes

no

Developers specified character set

no

yes (US-ASCII, UTF-8, UTF-16)

Developer defined data types

no

yes

Can specify recipient

no

yes

require client understanding

no

yes

message specific processing instructions

no

yes