soap 简单对象访问协议
2014-03-20 15:13
337 查看
简单对象访问协议[编辑]
维基百科,自由的百科全书
(重定向自SOAP)
跳转至:
导航、 搜索
Web服务(web service)中,交换带结构信息。SOAP为了简化网页服务器(Web
Server)从XML数据库中提取数据时,节省去格式化页面时间,以及不同应用程序之间按照HTTP通信协议,遵从XML格式执行资料互换,使其抽象于语言实现、平台和硬件。此标准由IBM、Microsoft、UserLand和DevelopMentor在1998年共同提出,并得到IBM,莲花(Lotus),康柏(Compaq)等公司的支持,于2000年提交给万维网联盟(World
Wide Web Consortium;W3C),目前SOAP 1.1版是业界共同的标准,属于第二代的XML协定(第一代具主要代表性的技术为XML-RPC以及WDDX)。
用一个简单的例子来说明SOAP使用过程,一个SOAP消息可以发送到一个具有Web Service功能的Web站点,例如,一个含有房价信息的数据库,消息的参数中标明这是一个查询消息,此站点将返回一个XML格式的信息,其中包含了查询结果(价格,位置,特点,或者其他信息)。由于数据是用一种标准化的可分析的结构来传递的,所以可以直接被第三方站点所利用。
1
相关定义
2
历史
3
传输方式
4
语法规则
5
SOAP消息实例
5.1
请求
5.2
回应
6
参见
7
外部链接
SOAP编码规则(encoding rules),它定义了一种序列化的机制,用于表示应用程序需要使用的数据类型的实例;
SOAP RPC表示(RPC representation),它定义了一个协定,用于表示远程过程调用和应答;
SOAP绑定(binding),它定义了SOAP使用哪种协议交换信息。使用HTTP/TCP/UDP协议都可以。
把SOAP绑定到HTTP提供了同时利用SOAP的样式和分散的灵活性的特点以及HTTP的丰富的特征库的优点。在HTTP上传送SOAP并不是说SOAP会覆盖现有的HTTP语义,而是HTTP上的SOAP语义会自然的映射到HTTP语义。在使用HTTP作为协议绑定的场合中,RPC请求映射到HTTP请求上,而RPC应答映射到HTTP应答。然而,在RPC上使用SOAP并不仅限于HTTP协议绑定。
SOAP曾经代表“Simple Object Access Protocol”,但是这种缩写已经在标准的1.2版后被废止了。1.2版在2003年6月24日成为W3C的推荐版本。这种缩写容易与SOA——Service-oriented
architecture产生歧义,虽然它们之间存在非常大的差异。
SOAP由Dave Winer, Don Box,Bob Atkinson, Mohsen Al-Ghosein于1998年设计,当时只作为一种对象访问协议。现在,SOAP规范由
万维网联盟的
XML工作组维护。
SOAP的消息格式采用XML。
SOAP消息必须使用SOAP Envelope命名空间
SOAP消息必须使用SOAP Encoding命名空间
SOAP消息不能包含DTD引用
SOAP消息不能包含XML处理指令
XML-RPC
WDDX
WSDL
UDDI
WS-Security
维基百科,自由的百科全书
(重定向自SOAP)
跳转至:
导航、 搜索
Web服务(web service)中,交换带结构信息。SOAP为了简化网页服务器(Web
Server)从XML数据库中提取数据时,节省去格式化页面时间,以及不同应用程序之间按照HTTP通信协议,遵从XML格式执行资料互换,使其抽象于语言实现、平台和硬件。此标准由IBM、Microsoft、UserLand和DevelopMentor在1998年共同提出,并得到IBM,莲花(Lotus),康柏(Compaq)等公司的支持,于2000年提交给万维网联盟(World
Wide Web Consortium;W3C),目前SOAP 1.1版是业界共同的标准,属于第二代的XML协定(第一代具主要代表性的技术为XML-RPC以及WDDX)。
用一个简单的例子来说明SOAP使用过程,一个SOAP消息可以发送到一个具有Web Service功能的Web站点,例如,一个含有房价信息的数据库,消息的参数中标明这是一个查询消息,此站点将返回一个XML格式的信息,其中包含了查询结果(价格,位置,特点,或者其他信息)。由于数据是用一种标准化的可分析的结构来传递的,所以可以直接被第三方站点所利用。
目录
[隐藏]1
相关定义
2
历史
3
传输方式
4
语法规则
5
SOAP消息实例
5.1
请求
5.2
回应
6
参见
7
外部链接
相关定义[编辑]
SOAP封装(envelop),它定义了一个框架,描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们;SOAP编码规则(encoding rules),它定义了一种序列化的机制,用于表示应用程序需要使用的数据类型的实例;
SOAP RPC表示(RPC representation),它定义了一个协定,用于表示远程过程调用和应答;
SOAP绑定(binding),它定义了SOAP使用哪种协议交换信息。使用HTTP/TCP/UDP协议都可以。
把SOAP绑定到HTTP提供了同时利用SOAP的样式和分散的灵活性的特点以及HTTP的丰富的特征库的优点。在HTTP上传送SOAP并不是说SOAP会覆盖现有的HTTP语义,而是HTTP上的SOAP语义会自然的映射到HTTP语义。在使用HTTP作为协议绑定的场合中,RPC请求映射到HTTP请求上,而RPC应答映射到HTTP应答。然而,在RPC上使用SOAP并不仅限于HTTP协议绑定。
历史[编辑]
SOAP曾经代表“Simple Object Access Protocol”,但是这种缩写已经在标准的1.2版后被废止了。1.2版在2003年6月24日成为W3C的推荐版本。这种缩写容易与SOA——Service-oriented
architecture产生歧义,虽然它们之间存在非常大的差异。
SOAP由Dave Winer, Don Box,Bob Atkinson, Mohsen Al-Ghosein于1998年设计,当时只作为一种对象访问协议。现在,SOAP规范由
万维网联盟的
XML工作组维护。
传输方式[编辑]
SOAP使用因特网应用层协议作为其传输协议。SMTP以及HTTP协议都可以用来传输SOAP消息,但是由于HTTP在如今的因特网结构中工作得很好,特别是在网络防火墙下仍然正常工作,所以被广泛采纳。SOAP亦可以在HTTPS上传输。SOAP的消息格式采用XML。
语法规则[编辑]
SOAP消息必须用XML来编码SOAP消息必须使用SOAP Envelope命名空间
SOAP消息必须使用SOAP Encoding命名空间
SOAP消息不能包含DTD引用
SOAP消息不能包含XML处理指令
SOAP消息实例[编辑]
请求[编辑]
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <req:echo xmlns:req="http://localhost:8080/wxyc/login.do"> <req:category>classifieds</req:category> </req:echo> </soapenv:Body> </soapenv:Envelope>
回应[编辑]
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing"> <soapenv:Header> <wsa:ReplyTo> <wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address> </wsa:ReplyTo> <wsa:From> <wsa:Address>http://localhost:8080/axis2/services/MyService</wsa:Address> </wsa:From> <wsa:MessageID>ECE5B3F187F29D28BC11433905662036</wsa:MessageID> </soapenv:Header> <soapenv:Body> <req:echo xmlns:req="http://localhost:8080/axis2/services/MyService/"> <req:category>classifieds</req:category> </req:echo> </soapenv:Body> </soapenv:Envelope>
参见[编辑]
XMLXML-RPC
WDDX
WSDL
UDDI
WS-Security
相关文章推荐
- SOAP:简单对象访问协议
- SOAP:简单对象访问协议
- SOAP-Simple Object Access Protocol(简单对象访问协议)
- 概念——SOAP(简单对象访问协议)
- 使用WSDL发布WebService(第二部分)简单对象访问协议——学习SOAP语法和使用SOAP发布WSDL
- 一、SOAP简单对象访问协议讲解
- SOAP(简单对象访问协议)
- SOAP:简单对象访问协议
- SOAP简单对象访问协议
- 简单对象访问协议(SOAP)初级指南
- 简单对象访问协议(Simple Object Access Protocol),PHP调用SOAP过程中的种种问题;php的soap无故出错的真凶:wsdl缓存
- SOAP简单对象访问协议详细介绍
- 简单对象访问协议SOAP及其应用
- 简单对象访问协议(SOAP)初级指南
- SOAP(Simple Object Access Protocol,简单对象访问协议)
- 使用WSDL发布WebService(第二部分)简单对象访问协议——学习SOAP语法和使用SOAP发布WSDL
- 使用 WSDL 部署 Web 服务,第 2 部分: 简单对象访问协议(SOAP)
- 简单对象访问协议(SOAP)初级指南
- soap简单对象访问协议
- SOAP:是Simple Object Access Protocol缩写,直译过来则是简单对象访问协议。