6.2.1 SOAP与XML消息传递
SOAP(Simple Object Access Protocol),即简单对象访问协议,它是Web Service的根本。SOA架构最基础的支柱是XML消息传递。当前XML消息传递的行业标准是SOAP。通过SOAP,我们可以由一个应用程序单路性地向另一个应用程序发送XML消息,任何应用程序都可作为发送者或者接受者。SOAP仅定义消息结构和消息处理的协议,与底层的传输协议独立。SOAP包括以下三个部分:
SOAP封装结构:此结构定义了传递消息的整体框架,确定了消息中的内容,内容的处理者以及内容哪些部分是可选的,哪些部分是必需的;
(1)SOAP编码规则:定义应用程序之间数据交换机制;
(2)SOAP RPC表示:定义远程过程调用的应答协议。
在SAOP封装、SOAP编码规则和SOAP RPC协议之外,该规范还定义了两个协议绑定,分别确定在有无HTTP扩展框架这两种情况下,如何在HTTP消息中传输SOAP消息。
SOAP通常和各种网络协议(如HTTP,SMTP,FTP和IIOP或MQ上的RMI)相结合使用,或者用这些协议重新封装后使用。应用程序与SOAP的集成可以通过四个基本步骤加以实现,如图6-3所示。
图6-3 基于SOAP的XML消息传递
(1)服务请求者的应用程序创建一条调用服务提供者提供的Web Service操作的SOAP请求消息;
(2)以服务提供者的SOAP Runtime(如一个SOAP服务器)为中介,网络基础结构将消息传送到服务提供者的Web Service;
(3)Web Service负责处理请求信息并生成一个响应,以SOAP Runtime为中介将响应的SOAP消息响应发送到网络上的服务请求者;
(4)响应消息由服务请求节点上的网络基础结构接收,然后提供给应用程序。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。