WEB Services SOAP notes

一. SOAP概述

SOAP(Simple Object Access Protocol),它是一种标准消息传递协议,通常是Web Service的事实标准。SOAP是以XML为基础,SOAP消息格式是由XML Schema模式定义,通过XML命名空间使SOAP具有很强的扩展性。

SOAP message:SOAP XML文档实例,通常通过其他某些网络协议的有效载荷来携带SOAP消息,例如:HTTP, SMTP, TCP/IP等。

Web Service可以使用两种方式:One-Way messaging(单向消息传递)或者Request/Response messaging(请求/响应消息传递)

 

二. SOAP风格中RPC与Document的区别

在 Web 服务描述语言( Web Service Definition Language , WDSL )规范中隐含着一个非常巧妙的转换开关,它可以将Web 服务的 SOAP 绑定从远程过程调用转换成 pass-through 文档。在 SOAP 协议绑定中的样式属性可以包含这两个值中的一个:rpc 或 document 。当属性被设定为文档样式时,客户端知道应该使用 XML 模式而不是远程过程调用约定。

 

如果样式声明为 RPC ,消息就封装在包装器元素中,同时带有从操作名属性中提取的的元素的名称以及从操作名称空间属性中提取的名称空间。

 

三. SOAP消息传递模式

消息传递模式通常描述的是SOAP消息的有效负载:即XML文档段或者是远程过程调用对应的参数和返回值的XML表示。

 

SOAP支持四种消息传递模式(RPC/Literal, Document/ Literal, RPC/Encoded, and Document/Encoded),

但是WS-I Basic Profile只允许RPC/Literal和Document/ Literal,不支持SOAP encoding,因为它会引起严重的互操作性。

Literal表示可以根据XML模式验证XML文档的有效性。

 

3.1 Document/ Literal消息传递模式

Document/ Literal消息传递模式中,SOAP的Body元素包含一个XML格式良好的文档段;

 

3.2 RPC/Literal消息传递模式

RPC/Literal消息传递模式将Body元素格式化成struct。PRC请求消息包含调用的方法名称与输入参数。RPC响应消息则包含返回值和各种输出参数(或者错误)

 

引用自:

WEB Service SOAP http://bldmickey.blog.sohu.com/58932442.html

SOAP风格中 RPC与Document的区别 http://blog.csdn.net/tomholmes7/article/details/2773738

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章