1. 什么是SOAP ?
SOAP :(simple object access protocol,简单对象访问协议),它是简单,轻量级的信息交换协议。
作用是:数据交换。
语言:基于XML的WSDL语言。它可以描述方法名,参数类型,返回值,调用WebService地址,接口,协议和复杂数据结构(如,数组,结构体,集合等)。通过这些,使用者可以判断出这个web服务都有哪些函数接口,每个函数的参数是什么,返回值是什么等。有了这些,才能够构造SOAP报文来调用该Web服务的某个函数接口。
优点:SOAP不需HTTP的GET和POST,它不受“名称/值”对的限制,我们可以使用它来发送复杂的对象,包括DataSet(缓存中的数据库)、类和其他对象。
缺点: 由于SOAP消息十分冗长,因此如果存在带宽或者传输性能的问题,会导致接收和发送的消息遗失,在此情况下,建议使用POST或GET。
结构: 消息内容和一个或多个头模块组成,封装在SOAP envelope中。
下面是一个SOAP报文的例子:
<?xml version="1.0" encoding="utf-8"?>
-
<
wsdl:deFinitions name
="
HPFlights_Service
"
targetNamespace
="
HP.soAQ.SampleApp
"
xmlns:wsdl
="
http://schemas.xmlsoap.org/wsdl/
"
xmlns:soap
="
http://schemas.xmlsoap.org/wsdl/soap/
"
xmlns:wsu
="
http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd
"
xmlns:soapenc
="
http://schemas.xmlsoap.org/soap/encoding/
"
xmlns:wsam
="
http://www.w3.org/2007/05/addressing/Metadata
"
xmlns:tns
="
HP.soAQ.SampleApp
"
xmlns:wsa
="
http://schemas.xmlsoap.org/ws/2004/08/addressing
"
xmlns:wsp
="
http://schemas.xmlsoap.org/ws/2004/09/policy
"
xmlns:wsap
="
http://schemas.xmlsoap.org/ws/2004/08/addressing/policy
"
xmlns:xsd
="
http://www.w3.org/2001/XMLSchema
"
xmlns:msc
="
http://schemas.microsoft.com/ws/2005/12/wsdl/contract
"
xmlns:wsaw
="
http://www.w3.org/2006/05/addressing/wsdl
"
xmlns:soap12
="
http://schemas.xmlsoap.org/wsdl/soap12/
"
xmlns:wsa10
="
http://www.w3.org/2005/08/addressing
"
xmlns:wsx
="
http://schemas.xmlsoap.org/ws/2004/09/mex
">
<
xsd:import
schemaLocation
="
http://yaweijun1:24240/HPFlights_SOAP?xsd=xsd0
"
namespace
="
HP.soAQ.SampleApp
" />
<
xsd:import
schemaLocation
="
http://yaweijun1:24240/HPFlights_SOAP?xsd=xsd1
"
namespace
="
http://schemas.microsoft.com/2003/10/Serialization/
" />
</
xsd:schema
>
</
wsdl:types
>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。