Web Services 是一个可以将应用程序变为 Web 应用程序,将自己本地的应用程序信息通过网络,发布到网络中,让别人通过浏览器访问本地信息。
Web Services 的技术主要建立在 XML 的规范之上,保证了这一体系结构的平台无关性、语言无关性和人机交互性能。
Web Services 框架的核心技术包括 SOAP , WSDL 和 UDDI ,它们都是以标准的 XML 文档的形式表示的。
web 服务框架:
SOAP 是一种简单的、轻量级的基于 XML 的机制,用于在网络应用程序之间进行结构化的数据交换。 SOAP 包括三部分:一个定义描述消息内容的框架的信封,一组表示应用程序定义的数据类型实例的编码规则,以及表示远程过程调用和响应的约定。
SOAP 消息包含在 HTTP 的请求与应答消息的有效负载区中。由于 HTTP POST请求存在有效负载区,因此完全适于携带 SOAP 消息。 HTTP 应答消息均遵循相同的格式并携带有效负载。
WSDL协议(Web服务描述语言)描述如何与一个Web服务通讯,用于描述Web Service 及其函数、参数和返回值。因为基于 XML 的,所以 WSDL 既是机器可读,又是人可读。一些新的开发工具能根据 Web Service 生成 WSDL 文档,又能导入 WSDL 文档,生成调用相应的 WebService 代码。在WSDL定义中,允许不同类型的通讯(绑定)。
WSDL 可与 SOAP 绑定: 当您在 UDDI 注册中心发布 Web 服务时,会把WSDL 与 SOAP/UDDI 结合起来。
WSDL 到 UDDI 的映射: 为帮助在UDDI注册中心发布和查找WSDL服务描述,WSDL文档被分为两种类型:服务接口(serviceinterface)和服务实现(serviceimplementatios)。服务接口由WSDL文档来描述,这种文档包含服务接口的types、import、message、portType和binding等元 素。服务接口定义了实现一个或多个服务的WSDL服务,它是Web服务的抽象定义,并被用于描述某种具体类型的服务。
UDDI 数据实体提供对定义业务和服务信息的支持。 WSDL 中定义的服务描述信息时 UDDI 注册中心的补充。
与 SOAP 关系:
UDDI 构建于网络传输层和基于 SOAP 的 XML 消息传输层之上。
UDDI 提供了一种编程模型和模式,它定义域注册中心通信的规则。 UDDI 规范中所有的 API 都用 XML 来定义,包装在 SOAP 信封中,在 HTTP 上传输。
UDDI 消息的传输,通过 HTTP 从客户机的 SOAP 请求传到注册中心节点,再反向传输。注册中心服务器的 SOAP 服务器接受 UDDISOAP 消息,进行处理,然后把 SOAP 响应返回给客户机。
WSDL用来描述服务;
UDDI用来注册和查找服务;
SOAP作为传输层,用来在消费者和服务提供者之间传送消息。SOAP是Web服务的默认机制,其他的技术为可以服务实现其他类型的绑定。
用户可以在UDDI注册表(registry)查找服务,取得服务的WSDL描述,然后通过SOAP来调用服务。
客户端::取得服务端的服务描述文件WSDL,解析该文件的内容,了解服务端的服务信息,以及调用方式。根据需要,生成恰当的SOAP请求消息(指定调用的方法,已经调用的参数),发往服务端。等待服务端返回的SOAP回应消息,解析得到返回值。
服务端:生成服务描述文件,以供客户端获取。接收客户端发来的SOAP请求消息,解析其中的方法调用和参数格式。根据WSDL和WSML的描述,调用相应的COM对象来完成指定功能,并把返回值放入SOAP回应消息返回给用户。
Web 服务的现状: Web 站点就像孤岛,信息无法管理。信息交互能及时获取数据,这时候用到了 web 服务,增加系统分布式通讯。各站点之间就可以通讯了。