首页 > 解决方案 > 跨多个组织的基于网络的长期应用程序在 REST 中意味着什么?

问题描述

我遇到了许多教程来了解 REST 的每一个细节。

我的理解 - REST 是基于网络的应用程序的架构风格(我的意思是服务器可用于客户端的服务,并且两者都基于网络相互通信)

我的理解是错误的吗?

根据 Roy T Fielding https://roy.gbiv.com/untangled/2008/rest-apis-must-be-hypertext-driven#comment-742 ,跨多个组织的基于网络的长期应用程序到底意味着什么

我对长期存在的基于网络的应用程序这一术语感到困惑。

因此,如果我创建了一个遵循 REST 约束但在网络上不可用但可以在网络内访问的 API(例如,用于获取学校学生分数但在互联网上不可用的 API,只能在学校并通过 HTTP://SERVERIP 访问)-这不能是 REST API 吗?

标签: rest

解决方案


这不能是 REST API 吗?

不,没关系。

关键思想之一是:我们对客户端和服务器之间的自描述消息有一个商定的标准。对于 Web,该标准是 HTTP。HTTP(在大多数情况下;有关一些例外情况请参见第六章)旨在满足 REST 架构约束。因为我们有这个标准,我们可以通过反向代理(由 Apache Software Foundation 实现)将浏览器(由 Google 实现)指向 Web 服务器(由 Oracle 实现),这一切都“正常工作”。

如果你把这些碎片放到你控制的隔离网络上,它仍然“正常工作”。

通俗地说,长寿是什么意思,请...

罗伊将他的解释埋在评论中

REST 是数十年规模的软件设计:每一个细节都旨在促进软件寿命和独立进化。

网络上的几乎所有东西都理解 HTTP/1.1 (1999),它建立在 HTTP/1.0 (1996) 的基础上,而 HTTP/1.0 (1991) 又建立在HTTP/0.9 (1991) 的基础上。


推荐阅读