007-2271-不出局

REST与SOAP

2018-11-21  本文已影响16人  短暂瞬间

第63篇

最近遇到REST与SOAP的讨论,对于其中的具体含义不理解,于是找相关的资料了解一下。

1、什么是REST

REST:Representational State Transfer。『表现层状态转换』,是一种互联架构风格,是由Roy Thomas Fielding于2000年提出,兼容于这种风格(简称REST或RESTful)的网络服务可以称为 RESTful web service。
RESTful web service允许客户端使用统一且预定义的无状态操作方法来访问和操作Web资源的表现形式。

REST架构风格的特点

2、什么人是SOAP

SOAP:Simple Object Access Protocol。『简单对象访问协议』 [1] ,是一种交换结构化数据的协议规范,由W3C制定,目前推荐版本是SOAP 1.2,这种协议使用XML定义其消息格式,并通过HTTP/SMTP进行消息传输。

3、REST与SOAP对比

风格VS协议

REST是一种思想,一种设计风格,而SAOP是一种协议。

标准HTTP方法 VS 自定义接口方法

RESTful Web 服务使用标准的 HTTP 方法 (GET/PUT/POST/DELETE) 来抽象所有 Web 系统的服务能力,SOAP 应用都通过定义自己个性化的接口方法来抽象 Web 服务。

可复用HTTP缓存 VS 无法轻易缓存

REST 的应用可以充分地挖掘 HTTP 协议对缓存支持的能力,而SOAP因为无法查看SOAP请求的内容从而无法轻易实现缓存支持。

以资源为中心 VS 以操作为中心

RESTful Web服务是以资源为中心的,以URL定位所有可访问目标,对每个资源的操作都是标准化的HTTP方法,而SOAP的Web服务以操作为核心,每个操作的输入输出都通过XML文件实现。

3、RESTful Web服务与 SOAP Web服务的区别

RESTful架构
SOAP架构

通过上面两张图可以明显看出两种Web服务的区别,比如HTTP方法的区别、响应的内容、资源的URL地址、服务端数据的存储方式。

4、参考文章和资料

Representational state transfer 维基百科
SOAP 维基百科
Web 服务编程,REST 与 SOAP
WebService的两种方式SOAP和REST比较


  1. SOAP曾经代表“Simple Object Access Protocol”,但这种缩写已经在标准的1.2版后被废止了。1.2版中扩展了定义,SOAP也可以理解为 Service Oriented Architecture Protocol。

上一篇 下一篇

猜你喜欢

热点阅读