1、Http和Soap协议
- Http协议
定义(参考百度百科):超文本传输协议。它是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。
HTTP只负责传送数据,不会管这个数据是XML、HTML、图片、文本文件或者别的什么。
- Soap协议
定义(参考百度百科):简单对象访问协议。是交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WEB上交换结构化的和固化的信息。
SOAP协议则定义了怎么把一个对象变成XML文本,然后在远程如何调用等。SOAP是基于HTTP和XML的实现。
在网上看到下面这段对于Http和Soap协议的比喻:
HTTP就是邮局的协议,他们规定了你的信封要怎么写,要贴多少邮票等。。。。 SOAP就是你们之间交流的协议,负责把你所需要表达的意思写在信纸上,同时也负责让对方能够看得懂你的信。
soap将信息进行XML的序列化后,再用http协议的方式再打包进行传送,传送的方式还是tcp或者udp。做个比喻就好理解了。tcp 和 udp 都是公路,暂且把tcp认为是一般公路,udp高速公路,soapsoap是小轿车,http是装轿车的卡车,那么soap和http都可以在tcp和udp上跑。把soap的信息装到http里面,然后再运输,当然走的道路还是tcp或udp。
所以,soap信息可以通过http协议包装后通过tcp或udp传输。
2、http和webservices接口类型
- http接口
httpservice通过post和get方式得到你想要的东西,http协议传输的都是字符串了。
- WebServices接口
webservice就是使用soap协议得到你想要的东西,他将传输的数据处理成较为复杂的对象了。其实他就是一个WSDL文档,客户根据WSDL描述文档,会生成一个SOAP请求消息,客户生成的SOAP请求会被嵌入在一个HTTP POST请求中,发送到Web服务器来。Web服务器再把这些请求转发给Web service请求处理器。请求处理器的作用在于,解析收到的SOAP请求,调用Web service,然后再生成相应的SOAP应答。Web服务器得到SOAP应答后,会再通过HTTP应答的方式把它送回到客户端。
Webservice是系统对外的接口,比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的。