一、Web Services的基本概念
Web Services是设计支持机器于机器通过网络互操作的一种软件系统(W3C的定义)。
Web Services是一种分布式的体系结构,可以跨域应用系统的对象体系、运行平台、开发语言等的界限,以服务的形式封装应用并对外发布,供用户或其他企业调用,从而形成一个基于Web的服务共享平台。
Web Services是描述一些利用标准化的XML消息传递机制可以通过网络访问的操作的接口。Web Services是用标准的、规范的XML概念描述的,称为Web Services的服务描述(WSDL)。这一描述囊括了与服务交互需要的全部细节,包括消息格式、详细操作、传输协议和位置。该接口隐藏了实现服务的细节,允许独立于实现服务基于的硬件或软件平台和编写服务所用的语言使用服务。这允许并支持基于Web Services的应用程序称为松散耦合、面向组件或跨技术实现。Web Services履行一项特定的任务或一组任务。
二、相关概念
1、XML:XML是EXtensible Markup Language的缩写,XML是一种类似于HTML的标记语言,XML是用来描述数据的,XML的标记不是在XML中预定义的,你必须定义自己的标记 XML使用文档类型定义(DTD)或者模式(Schema)来描述数据 ,XML使用DTD或者Schema后就是自描述的语言.
2、SOAP :SOAP(Simple Object Access Protocol)简单对象访问协议是在分散或分布式的环境中交换信息的简单的协议,是一个基于XML的协议。它包括四个部分:SOAP封装(envelop),封装定义了一个描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们的框架;SOAP编码规则(encoding rules),用于表示应用程序需要使用的数据类型的实例; SOAP RPC表示(RPC representation),表示远程过程调用和应答的协定;SOAP绑定(binding),使用底层协议交换信息。
3、WSDL: Web services 描述语言,它的主要构成要素有五个.Types: 定义WSDL定义中所用到的数据类型,即XML Schema Types;Message : 对一组消息的输入和输出参数的定义;portType : 定义Web服务的操作;Binding :描述特定服务接口的协议、数据格式、安全性和其它属性.Services : 制定特定服务的URL和提供的调用接口,包含一组端口元素. 这样Web services 就实现了自我描述.
4、UDDI :Universal Description Discovery and Integration即统一描述、发现和集成协议。UDDI同时也是Web服务集成的一个体系框架。它包含了服务描述与发现的标准规范。UDDI规范利用了W3C和Internet工程任务组织(IETF)的很多标准作为其实现基础,比如扩展标注语言(XML),HTTP和域名服务(DNS)这些协议。有了它我们的Web services 就可以注册到UDDI中心.供其客户查找使用.
三、Web Servies体系结构
Web 服务协议栈的基础是网络层。Web 服务要被服务请求者调用,就必须是可以通过网络访问的。因特网上可以公用的 Web 服务使用普遍部署的网络协议。HTTP 凭借其普遍性,成为了因特网可用的 Web 服务真正的标准网络协议。Web 服务还可以支持其它因特网协议,包括 SMTP 和 FTP。内部网域可以使用可靠消息传递和调用基础结构。
下一层是基于 XML 的消息传递,它表示使用 XML 作为消息传递协议的基础。选择 SOAP 作为 XML 消息传递协议有很多原因:
- 它是使用 XML 传送以文档为中心的消息以及远程过程调用的标准化封装机制。
- SOAP 很简单;它基本上是一个用 XML 信封作为有效负载的 HTTP POST。
- SOAP 比对 XML 简单的 HTTP POST 更受青睐,因为它定义了一个标准机制,这个机制将正交扩展(orthogonal extension)合并为使用 SOAP 报头和对操作或函数进行标准编码的消息。
- SOAP 消息支持 Web 服务体系结构中的发布、查找和绑定操作。
服务描述层实际上是描述文档的一个协议栈。首先,WSDL 是基于 XML 的服务描述的真正标准。这是支持可互操作的 Web 服务所需的最小标准服务描述。WSDL 定义了服务交互的接口和结构。要指定业务环境、服务质量和服务之间的关系,我们还需要另外的描述。WSDL 文档可以由其它服务描述文档来补充,从而描述 Web 服务的这些更高级的方面。例如,描述业务环境除了使用 WSDL 文档,还要使用 UDDI 数据结构。Web 服务流程语言(Web Services Flow Language,WSFL)文档中则描述了服务组成和流程。“服务描述:从 XML 消息传递到 Web 服务”部分更详细地描述了这一层。
因为 Web 服务被定义为可以通过 SOAP 从网络进行访问,并由服务描述表示,所以该协议栈中的前三层需要提供或使用 Web 服务。最简单的协议栈将包括网络层的 HTTP、XML 消息传递层的 SOAP 协议以及服务描述层的 WSDL。所有企业间或公用 Web 服务都应该支持这种可互操作的基础协议栈。Web 服务,特别是企业内部或专用 Web 服务,能够支持其它的网络协议和分布式计算技术。
来源:https://www.cnblogs.com/zhaozhan/archive/2010/08/17/1801783.html