当前位置: 代码迷 >> Web前端 >> Web Service基础(2)
  详细解决方案

Web Service基础(2)

热度:175   发布时间:2012-11-09 10:18:48.0
Web Service基础(二)

什么是Web Service

        对于这个问题,我在Web Service基础(一)中已经有了简单的介绍了。其实,我们的答案不只一个。从表面上看,Web Service就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web来调用这个应用程序。我们把调用这个Web Service的应用程序叫做客户。当然还有更加精确的解释:Web Service是建立可互操作的分布式应用程序的新平台。作为一个Windows程序员,你可能已经用COM或DCOM简历过基于组件的分布式应用程序。COM是一个非常好的组件技术,但是我们也很容易举出COM并不能满足要求的情况。Web Service平台是一套标准,它定义了应用程序如何在Web上实现互操作性。

Web Service的特点

      1. 完好的封装性。使用者仅能看到Web Service提供的功能列表,对于其它未提供的接口以及内部是怎样实现的则无法看到。

      2. 松散耦合。只要接口不变,其使用方法就不会改变,很方便的增加或这改进功能。

      3. 使用标准协议规范。使用开放的标准协议进行描述、传输和交换。

      4. 高度可互操作性。可以跨越平台、语言进行调用。开发者可以在不同的平台上、不同的语言进行调用,当然,具体的方式会有所不同。

      5. 高度可集成能力。

      6. 动态性。可以自动发现服务并进行调用。

Web服务SOAP

       SOAP是一个简单的用于在Web上交换结构信息的XML协议。简单对象访问协议(SOAP)包含四部分:①信封,消息中包含什么、谁处理消息、是可选还是强制的。②数据的编码规则,定义了一套编码机制用于交换应用程序定义的数据类型的实例。③RPC调用规范,定义了一个用于标识远程过程调用和响应的约定。④SOAP绑定,定义了一个使用底层传输协议来完成节点之间交换SOAP信封的约定。

       SOAP定义了一个“envelope”对象,使用“envelope”包装消息自身,消息可以采用自身特定的XML词汇,使用namespace来区分彼此。


Web服务WSDL

       你会怎样想别人介绍你的Web Service有什么功能,以及每个函数调用时的参数呢?解决方法是:用机器能阅读的方式提供一个正式的描述文档。Web Service描述语言(WSDL)就是这样一个基于XML的语言,用于描述Web Service及其函数、参数和返回值。因为是基于XML的,所以WSDL既是机器可阅读的,又是人可阅读的。一些最新的开发工具既能根据你的Web Service生成WSDL文档,又能导入WSDL文档,生成调用相应Web Service的代码。

       那么WSDL为什么描述服务?开发工具可以自动处理通讯细节,分布式系统的文档,其他系统知道如何与你的系统交流、系统复杂度越高越重要,利于标准化。

       WSDL是采用XML语言来描述Web Service的属性的语言,WSDL文档可以包含以下内容:What――做什么,Where――位于哪里,How――怎样调用。如果将Web Service作为一个分布式对象来看,WSDL就是Web Service的接口描述语言(IDL)。WSDL定义了一套基于XML的语法,将Web Service描述为能够进行消息交换的服务访问点的集合。

Web服务UDDI

       UDDI是为加速Web Service的推广、加强Web Service的互操作能里而推出的一个计划,基于标准的服务描述和发现的规范,以资源共享的方式由多个运作者一起以Web Service的形式运作UDDI商业注册中心,UDDI计划的核心组件是UDDI商业注册,它使用XML文档来描述企业及其提供的Web Service,促使IT业界和商业界的领导者之间的合作。


UDDI商业注册所提供的信息

       White Page,包含地址、联系方法、已知的企业标识。

       Yellow Page,包含基于标准分类法的行业类别。

       Green Page,包含关于该企业所提供的Web Service的技术信息,其形式可能是指向文件或URL的指针,而这些文件或URL是为服务发现机制服务的。


1楼lfmilaoshi前天 23:22
很重要的理论n米老师
  相关解决方案