0 Comments

SOAP介绍

发布于:2012-12-05  |   作者:广州网站建设  |   已聚集:人围观

         在SOAP协议出现以前,应用程序之间的通信采用的技术有CORBA(Common Object Request Broker Architecture,公用对象请求代理程序体系结构)、DCOM(Distributed COM)和RMI(Remote Method Invocation,远程方法调用)。但如果采用CORBA、DCOM和RMI解决方案,就很难让这些不同的技术彼此通信。这些技术的另一个问题是它们的结构,这些技术都不是为成千上万个客户设计的,没有Internet解决方案所需要的可伸缩性。

        之后,包括Microsoft和Userland Software(www.userland.com)在内的几家公司,于1999年创建了SOAP (Simple Object Access Protocol,简单对象访问协议),把它作为通过Internet调用对象的全新方式,它建立在已被广泛接受的标准协议的基础之上。SOAP使用基于XML的格式描述方法和参数,在网络上进行远程调用。COM世界中的SOAP服务器可以给COM调用传送SOAP消息,而CORBA世界中的SOAP服务器可以给CORBA调用传送SOAP消息。最初SOAP定义使用HTTP协议,所以SOAP调用可以通过Internet实现。

       SOAP的指导理念是"它是第一个没有发明任何新技术的技术"。它采用了已经广泛使用的两种技术:HTTP和XML。

        要调用Web服务上的一个方法,该调用必须转换为SOAP消息,因为它是在WSDL文档中定义的。

       SOAP消息是一个XML文档。SOAP消息是客户机和服务器之间通信的基本单元。

    一个SOAP消息包括一个必需的SOAP封装,一个可选的SOAP头和一个必需的SOAP体。

     SOAP头元素为SOAP封装元素的第1个直接子元素。头元素的所有直接子元素称作条目。SOAP头定义了客户机和服务器应如何处理SOAP体。SOAP体是必须有的,它包括发送的数据,通常SOAP体中的信息是要调用的方法和序列化的参数值。SOAP服务器把返回值发送回SOAP消息体。SOAP体元素提供了一个简单的机制,使消息的最终接收者能交换必要的信息。

     SOAP规范定义了一个能用来指定编码方法的全局属性encoding。

      在SOAP 1.2中,Web服务独立于HTTP协议,可以使用任意传输协议。但是,Web服务最常用的协议仍是HTTP。本章主要介绍可以用Visual Studio 2008 新建网站模板创建的Web服务,以使用SOAP和HTTP。

标签:
飞机