API Testing 11 - SOAP和REST API区别

API Testing 入门基础系列 之 API Testing 11 - SOAP和REST API区别

设计一个Web service或API依靠下面两个通用的实现:

SOAP – Simple Object Access Protocol
REST – Representational State Transfer Protocol

采用哪种实现方式创建一个Web service或API,取决于项目或系统的需求。我们来探讨一下SOAP和REST的区别。当下REST Web service比较抢手。

SOAP和REST的基本区别如下:

  1. SOAP是协议, REST是架构风格
    SOAP Web Services的开发需要遵循SOAP协议。
    REST Web services的开发需要遵循REST的架构风格。
    一个REST Web service也可以使用SOAP协议。

  2. 消息格式
    SOAP支持XML消息格式,REST支持平文,HTML,XML,JSON格式消息

  3. 驱动
    SOAP是功能驱动,REST是数据驱动或资源驱动

  4. 使用协议
    SOAP可以使用HTTP,SMTP等协议, REST只使用HTTP协议

  5. 安全性
    SOAP更安全,不仅像 REST 一样支持 SSL,还支持增加了很多企业级安全特性的 WS-Security(WS = web services),因此它能够提供通过中介的身份验证,而不仅仅是端对端的验证(SSL)。还有内置的ACID,指数据库事务正确执行的四个基本要素的缩写。包含:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability))
    REST 受限于 HTTPS,HTTP 本身无法提供两阶段提交分布式事务资源,但是 SOAP 可以。

  6. 复杂性,灵活性
    因为严格的规则和安全性,SOAP是复杂的,缺乏灵活性,需要更多的带宽和计算机容量。
    REST更加灵活,更少的资源和带宽需求。

  7. 缓存
    SOAP不能被缓存,REST可以被缓存

  8. 技术
    SOAP使用JAX-WS(Java API for XML Web Services) ,REST使用JAX-RS(Java API for RESTful Web Services)

  9. 调用
    SOAP 使用 RPC (Remote Procedure Calls)
    REST 使用HTTP 方法.

  10. SOAP是一个官方的标准,REST不是

  11. 应用领域
    SOAP应用于银行,支付等安全性要求高的系统。
    REST用于安全性不高的应用。

下面信息参考http、soap和rest区别
所有的 SOAP 消息发送都使用 HTTP POST 方法,并且所有 SOAP 消息的 URI 都是一样的,这是基于 SOAP 的 Web 服务的基本实践特征。
在这里插入图片描述

REST通过URI来定位资源,对资源进行CURD
在这里插入图片描述

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值