SOAP和HTTP关联和区别
基本描述
http:标准超文本传输协议;
soap:(Simple Object AccessProtocol)简单对象访问协议
它是轻型协议,用于分散的,分布式计算环境中交换信息.
soap有助于以独立于平台的方式访问对象,服务和服务器.他借助xml,提供了http所需的拓展.
soap的4个主要组成部分
1:soap封装定义了一个的框架(描述消息的内容多少,谁发送,谁应当接受处理,以及如何处理它们)
2:soap编码规则定义了可选数据编码规则,用于表示应用程序定义的数据类型和直接图标,以及一个用于序列化非语法数据模型统一标准
3:soap RPC表示定义一个远程调用风格(请求/响应)信息交换的模式
4:soap松绑定义了soap和http之间的绑定和使用底层协议的交换
soap简单理解为:soap=RPC+HTTP+XML,
即采用http作为通信协议,RPC作为一致性调用途径,XML作为数据传送的格式,从而允许服务提供者和服务客户经过防火墙在Internet上进行交换
soap和http区别:都是底层的通信协议,请求包的格式不同,
soap是xml形式,http是纯文本格式;
soap可以传递机构化的数据,http只能传输纯文本数据
soap是简单对象访问协议,http是标准超文本传输协议
soap相对于http由于要解析xml,速度可能有所降低
综合拿来比较
SOAP是一个基于XML的协议交换消息,可以使用HTTP来传输这些信息。
事实上HTTP是SOAP消息的最常见的传输工具。
soap将信息进行XML的序列化后,再用http协议的方式再打包进行传送,
传送的方式还是tcp或者udp。
一个容易理解的比喻
做个比喻就好理解了。
tcp 和 udp 都是公路,暂且把tcp认为是一般公路,udp高速公路,
soap和http就都是汽车,那么soap和http都可以在tcp和udp上跑。
说soap可以通过http来传送,实际就是说soap是小轿车,http是装轿车的卡车,
把soap的信息装到http里面,然后再运输,当然走的道路还是tcp或udp。
说soap可以通过http协议来传输,这句话不太准确,比较准确第说法是:
soap信息可以通过http协议包装后通过tcp或udp传输。