API Testing 11 – SOAP和REST API区别

API Testing 11 – SOAP和REST API区别设计一个Webservice或API依靠下面两个通用的实现:SOAP–SimpleObjectAccessProtocolREST–RepresentationalStateTransferProtocol采用哪种实现方式创建一个Webservice或API,取决于项目或系统的需求。我们来探讨一下SOAP和REST的区别。当下RESTWebservice比较抢手。SOAP和REST的基本区别如下:SOAP是协议,REST是架构风格SOAPWebServices

大家好,又见面了,我是你们的朋友全栈君。

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
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159177.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号