企业发布完成特定商务需求的在线应用服务,其他公司或者软件可以通过Internet来访问并使用这项在线服务。
Webservice采用HTTP协议传输数据,采用xml格式封装数据(xml中说明调用远程服务对象中的哪个方法,传递的参数是什么,以及服务对象返回的结果是什么)。Xml是webservice平台表示数据的格式。主要优点是平台无关,厂商无关。
Xsd定义了一套标准的数据类型,并给出了一种语言来扩展这套数据类型。Webservice平台就是用xsd来作为其数据类型系统。
SOAP:webservice通过HTTP协议发送请求和接收结果时,发送的请求和接收的结果都是通过XML格式封装,并增加了一些特定的Http消息头,以说明HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议。SOAP提供了标准的RPC(远程调用)方法来调用webservice
SOAP协议=HTTP协议+XML数据格式
SOAP协议定义了SOAP消息的格式,SOAP协议是基于HTTP协议的,SOAP也是基于XML和XSD的,XML是SOAP数据编码方式。
WSDL:webservice客户端要调用一个webservice服务,首先要知道这个服务的地址在哪,以及这个服务里有什么方法可以调用,所以,webservice服务端要通过WSDL来说明自己有啥服务可以对外调用,服务中有哪些方法,方法接收的参数是什么,返回值是什么,服务的网络地址用哪个URL表示,服务通过什么方式来调用。
WSDL就是这样一个基于XML的语言,用于描述webservice及其函数和参数,以及返回值。
WSDL文件保存在web服务器上,通过一个URL地址就可以访问到它。客户端要调用webservice服务之前,要知道该服务的WSDL文件地址。
Webservice服务商通过两种方式暴露它的WSDL文件地址:
-
注册到UDDI(目录服务)服务器,以便被人查找
-
直接告诉给客户端调用者