Web API vs. RESTful services



有人问我Web API和RESTful服务之间的区别,这对我来说也是一个有趣的问题。从我的角度来看,RESTful 服务和 Web API 之间唯一可能的区别可以被认为是 RESTful 服务本质上是无状态的(尽管我们可以使用 cookie(,而本质上无状态的概念不适用于 Web API,因为我们可以使用会话(不能在 RESTful 服务中使用(。

但是,我决定发布这个问题,看看是否有任何其他潜在的差异将这两种技术区分开来。

您正在比较编程框架和设计范例。这不是一个公平的比较。

Web

API 是一个 Web 服务应用程序框架。您可以使用它实现 REST API,但您不必这样做。你也可以在其中编写RPC风格的服务,或者实际上只是任何类型的应用程序,它使用HTTP但不(严格(遵守REST原则。

REST只是一种架构风格。它不是任何协议或框架。您可以使用许多框架和编程语言实现 RESTful 服务。Web API 只是 .NET 的其中之一。

确实,RESTful 服务是无状态的。以下是主要 REST 约束的列表:

  • 客户端-服务器
  • 无 国籍
  • 缓存
  • 统一的接口
  • 分层系统
  • 按需编码

有关REST架构的更多详细信息,我在此链接下推荐Roy Fielding的出版物。

回到你的疑问,你可以用 Web API 框架实现 RESTful 服务,但前提是你遵循 REST 架构风格的规则。

相关内容

  • 没有找到相关文章

最新更新