问答题 什么是Web Service
【正确答案】
【答案解析】Web Service是一种基于网络的分布式模块化组件,它可以将可调用的功能发布到Web上以供应用程序访问(应用程序可以使用标准的Web协议和数据格式来访问它)。由于Web Service遵循一定的技术规范,使得它能够与其他组件或系统有很好的兼容性。
具体而言,Web Service是基于下面的一些协议来实现的。
1)可扩展可标记语言(eXtensible Markup Language,XML)。它是实现Web Service的基础,非常适用于在网络上传输数据时使用。
2)Web服务描述语言(Web Service Description Language,WSDL)。它是采用XML语言来描述Web Service属性的语言。它将Web Service描述为能够进行消息交换的服务访问点的集合,具体定义了Web Service可以做什么、在哪里以及怎样去调用。
3)通用描述、发现与集成服务(Universal Description,Discovery and Integration,UDDI)。它是一种由OASIS(Organization for the Advancement of Structured Information Standards,结构化信息标准促进组织)制定的规范,主要提供基于Web服务的注册和发现机制,为Web服务提供3个重要的技术支持:①标准、透明、专门描述Web服务的机制;②调用Web服务的机制;③可以访问的Web服务注册中心。它维护了一个Web Service的全球目录,其中的信息描述格式也是基于XML格式的。UDDI的核心组件是UDDI商业注册,它使用XML文档来描述企业及其提供的Web Service。
4)简单对象存取协议(Simple Object Access Protocol,SOAP)。它是Web Service的通信协议。当用户通过UDDI找到对应的WSDL描述符后,就可以通过SOAP调用Web服务中的操作。SOAP也基于XML描述的方法调用规范。
调用Web Service时,服务提供者把所提供的服务发布到服务代理的一个目录上,然后服务请求者使用UDDI首先到服务代理提供的目录上搜索服务,得到如何调用该服务的信息(WSDL),然后根据得到的调用信息使用SOAP调用服务提供者提供的服务,如图所示。