什么是Web Service?什么是soap?

什么是Web Service?

WebService是一个SOA(面向服务的编程)的架构,它是不依赖于语言,不依赖于平台,可以实现不同的语言间的相互调用,通过Internet进行基于Http协议的网络应用间的交互。

WebService实现不同语言间的调用,是依托于一个标准,webservice是需要遵守WSDL(web服务定义语言)/SOAP(简单请求协议)规范的。

WebService=WSDL+SOAP+UDDI(webservice的注册)Soap是由Soap的part和0个或多个附件组成,一般只有part,在part中有Envelope和Body。 Web Service是通过提供标准的协议和接口,可以让不同的程序集成的一种SOA架构

Web Service的优点

(1) 可以让异构的程序相互访问(跨平台)

(2) 松耦合

(3) 基于标准协议(通用语言,允许其他程序访问)

Web Service的基本原理

(1) Service Provider采用WSDL描述服务

(2) Service Provider 采用UDDI将服务的描述文件发布到UDDI服务器(Register server)

(3) Service Requestor在UDDI服务器上查询并 获取WSDL文件

(4) Service requestor将请求绑定到SOAP,并访问相应的服务。

 

什么是SOAP?

SOAP请求(Simple Object Access Protocol,简单对象访问协议)是HTTP POST的一个专用版本,遵循一种特殊的XML消息格式,Content-type设置为:text/xml ,任何数据都可以XML化。

SOAP:简单对象访问协议。SOAP是一种轻量的,简单的,基于XML的协议,它被设计成在web上交换结构化的和固化的信息。SOAP可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议(HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。

SOAP是一个基于XML的协议交换信息,可以使用HTTP来传输这些信息。事实上HTTP是SOAP消息的最常见的传输工具。SOAP将信息进行XML的序列化后,再用HTTP协议的方式再打包进行传送,传送的方式还是TCP或者UDP。做个比喻就好理解了。TCP和UDP都是公路,暂且把TCP认为是一般公路,UPD高速公路,SOAP和HTTP就都是汽车,那么SOAP和HTTP都可以在TCP和UDP上跑。说SOAP可以通过HTTP来传送,实际就是说SOAP是小轿车,HTTP是装轿车的卡车,把SOAP的信息装到HTTP里面,然后再运输,当然走的道路还是TCP或UDP。说SOAP通过HTTP协议来传输,这句话不太准确,比较准确的说法是:SOAP信息可以通过HTTP协议包装后通过TCP或UDP传输。

posted @ 2020-04-09 17:22  一介桃白白  阅读(2378)  评论(0编辑  收藏  举报