【问题标题】:REST vs Web ServicesREST 与 Web 服务
【发布时间】:2011-01-12 00:57:15
【问题描述】:

关于this 问题,我有一个后续问题,我仍然对此感到困惑。我被要求比较 REST 与 Web 服务。根据我对 REST 的了解,它不是 Web 服务,因此您如何比较两者?这个问题在这方面说 REST 是什么意思?

【问题讨论】:

  • 我认为 REST 是一种网络服务。就像 SOAP 是一种 Web 服务一样。或 RPC。试图“比较”它们就像试图将汽车与福特福克斯进行比较。这没有意义。
  • REST 是一种架构风格,可用作 Web 服务。它也可以用于其他事情,因为它是一种建筑风格而不是规范! RESTful WS 和非 RESTful WS 之间的区别是,例如,RESTful WS 在服务器和客户端之间的通信中要求是无状态的(查找它)。虽然 SOAP 主要使用 XML 作为其格式,但您应该能够从 RESTful Web 服务请求几乎任何格式(您不需要支持),但如果客户端不支持(HTTP第415章)。
  • 我还是说你应该读一下论文!
  • 这个问题已经被问过无数次了。使用搜索。

标签: rest


【解决方案1】:

REST 是一种用于 Web 服务的架构模式,它强调将 URI 用作资源,并带有可以对其执行的一小组操作(通常是 PUT、POST、GET 和 DELETE)。我猜你被要求将 REST 与使用许多其他技术的 ws* 标准 Web 服务进行比较(包括 SOAP,虽然 SOAP 本身不是 Web 服务,但它只是碰巧在 ws 中使用的协议* 网络服务)。

【讨论】:

  • REST 是基于资源(名词)和 HTTP 协议设计的。
【解决方案2】:

REST 可用于提供 Web 服务,就像数据库可用于存储姓名和地址一样。 REST 远比提供 Web API 的方式更通用。

REST 对于构建分布式系统很有用。然而,很多人使用 Web 服务(注意大写字母,这通常表示 SOAP、WS-*)来构建分布式系统。

哇,我刚看到作业标签。这是一个非常刻薄的问题。有些行业资深人士无法回答这个问题。

一个更准确的问题是:比较使用 HTTP 的 REST 与使用 SOAP 的 RPC 构建分布式系统。

【讨论】:

    【解决方案3】:

    它们可能是指 REST 和 SOAP。它们都是概念上的 Web 服务。

    【讨论】:

      【解决方案4】:

      缩写 REST 代表“REpresentational State Transfer”。

      REST API 用于调用资源并允许软件基于标准化的原则、属性和约束进行通信。 REST API 在简单的请求/响应系统上运行。您可以使用这些 HTTP 方法发送请求。

      因此 REST 只是一种 API(一种允许您基于其他应用程序的数据和功能进行构建的接口)架构风格。

      另一方面,Web 服务是完成特定任务的基于网络的资源。是的,两者之间存在重叠:所有网络服务都是 API,但并非所有 API 都是网络服务。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-01-27
        • 1970-01-01
        • 2012-10-21
        • 2010-12-23
        • 2013-04-09
        • 1970-01-01
        • 2012-03-19
        • 1970-01-01
        相关资源
        最近更新 更多