soap和rest的区别是什么

soap和rest的区别在于以下几个方面:1、消息格式;2、驱动;3、使用协议;4、安全性;5、复杂性、灵活性;6、缓存;7、技术。其中,消息格式是指,SOAP支持XML消息格式,REST支持平文,HTML,XML,JSON格式消息。

一、消息格式

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

二、驱动

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

三、使用协议

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

四、安全性

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

REST 受限于 HTTPS,HTTP 本身无法提供两阶段提交分布式事务资源,但是 SOAP 可以。

五、复杂性,灵活性

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

REST更加灵活,更少的资源和带宽需求。

六、缓存

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

七、技术

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

八、调用

SOAP 使用 RPC (Remote Procedure Calls)

REST 使用HTTP 方法.

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

九、应用领域

SOAP应用于银行,支付等安全性要求高的系统。

REST用于安全性不高的应用。

来源:本文为CSDN博主「TiantianMami」的原创文章
原文链接:https://blog.csdn.net/TiantianMami/article/details/128831717

延伸阅读

soap是什么

soap(简单对象访问协议)是交换数据的一种协议规范,是一种轻量的、简单的、基于XML(标准通用标记语言下的一个子集)的协议,它被设计成在WEB上交换结构化的和固化的信息。

把SOAP绑定到HTTP提供了同时利用SOAP的样式和分散的灵活性的特点以及HTTP的丰富的特征库的优点。在HTTP上传送SOAP并不是说SOAP会覆盖现有的HTTP语义,而是HTTP上的SOAP语义会自然的映射到HTTP语义。在使用HTTP作为协议绑定的场合中,RPC请求映射到HTTP请求上,而RPC应答映射到HTTP应答。然而,在RPC上使用SOAP并不仅限于HTTP协议绑定。

webService三要素

SOAP、WSDL(WebServicesDescriptionLanguage)、UDDI(UniversalDescriptionDiscovery andIntegration)之一, soap用来描述传递信息的格式, WSDL 用来描述如何访问具体的接口, uddi用来管理,分发,查询webService 。

具体实现可以搜索 Web Services简单实例 ; SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议(HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。

它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。SOAP使用基于XML的数据结构和超文本传输协议(HTTP)的组合定义了一个标准的方法来使用Internet上各种不同操作环境中的分布式对象。

文章标题:soap和rest的区别是什么,发布者:小编,转载请注明出处:https://worktile.com/kb/p/46702

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小编的头像小编
上一篇 2023年3月8日 下午5:29
下一篇 2023年3月8日 下午6:33

相关推荐

  • 项目管理培训内容有哪些类型

    项目管理培训内容主要包括:基础知识培训、项目规划与控制培训、风险管理培训、质量管理培训、团队管理与领导力培训等。其中,基础知识培训是培训的起点,它主要涵盖项目管理的定义、项目生命周期、项目管理过程等关键概念,让参与者对项目管理有一个全面的理解。 一、基础知识培训 基础知识培训是项目管理培训的基石,主…

    2024年7月24日
    1000
  • bim项目管理平台有哪些内容

    BIM项目管理平台包含的内容主要有:项目管理模块、模型管理模块、协作与沟通模块、任务管理模块、文件管理模块、质量安全模块等。其中,项目管理模块是最核心的部分,它主要负责对项目整体进度的管理,包括项目计划、项目进度、项目成本、项目风险等方面的管理。该模块通常包含了项目信息管理、项目进度管理、项目成本管…

    2024年7月24日
    400
  • 旅游局管理哪些行业项目

    旅游局是一个专门负责管理和监管旅游活动的政府机构,主要负责的行业项目包括:旅游资源开发、旅游景区管理、旅游市场营销、旅游服务质量监管、旅游政策制定、旅游企业管理、旅游行业统计数据收集与分析、旅游规划与建设、旅游文化推广等。其中,旅游资源开发是旅游局的重要职责之一,它涉及到对旅游资源的勘查、评价、利用…

    2024年7月24日
    400
  • 项目管理的职业证书有哪些

    在项目管理领域,各种职业证书层出不穷,但以下几种证书是最为知名和公认的:PMP(项目管理专业人士)、PRINCE2(项目内控环境)、CAPM(认证项目管理师)、MSP(管理成功的项目)、ACP(敏捷认证专家)和CSM(认证Scrum Master)。各种证书的培训和取得,对从事项目管理工作的人来说,…

    2024年7月24日
    300
  • 项目管理的关键点有哪些

    项目管理的关键点包括:明确目标、制定详细计划、有效沟通、风险管理、资源分配、进度监控、质量控制、变更管理。明确目标是项目管理的基础,确保项目的所有参与者都了解并认同项目的最终目标,这是项目成功的第一步。明确目标不仅要清晰具体,还需可衡量、可实现、有时间限制和相关性。制定详细计划则是根据项目目标,分解…

    2024年7月24日
    300

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部