我已经读过Web服务是通过SOAP over HTTP传输的.那么SOAP和HTTP之间有什么区别,如果它们都是通信协议?
是否存在差异,或者HTTP只是SOAP使用的绑定?
有两个与Web服务相关的主要协议.
1,传输协议 - 例如HTTP(常用),TCP,UDP
第二,消息传递协议 - 例如SOAP,XML,JSON或二进制编码消息
一般来说,
消息传递协议负责以通常商定的格式交换消息.
传输协议负责传递消息以及它应如何通信.
一个现实世界的例子:HTTP就像电话通信,SOAP就像英语.
您可以通过HTTP在SOAP消息中调用Web服务,例如通过移动电话呼叫您的朋友并用英语交谈.
它不是传输的Web服务.相反,消息以SOAP格式传输.
SOAP是用于交换结构化信息的协议规范,可以使用几乎任何传输协议(HTTP是最广泛使用的,也可以使用RPC和SMTP).
长话短说,你不能比较HTTP和SOAP,因为这是两个正交的东西.请参阅维基百科.
Web服务不需要使用SOAP实现,SOAP实际上不需要通过HTTP传输(尽管这种情况非常罕见).HTTP是Web的底层协议,而SOAP是使用XML作为RPC调用的包络的一种方式.