我知道 REST 是一种架构风格,而 REST API 是 HTTP 请求。 那么 REST 只能使用 HTTP 来实现还是也可以使用其他的?
如果是,请提供示例。
最佳答案
REST是你提到的一种建筑风格。因此,理论上,任何符合其约束的架构都会实现 REST。
在实践中,从头开始实现这样一个系统确实很复杂,因为它涉及很多部分,需要符合很多要求。因此,我无法为您说出任何可以被视为符合 REST 的替代方案。
此外,如果您使用 URI,则不受 HTTP 的限制,因为 URI 支持多种协议(protocol)。所有这些都应该受到资源标识符为 URI 的任何客户端的支持。
还值得一提的是,大多数所谓的“REST API”不符合 Fielding 先生提出的要求。我并不是说他们挑剔,我的意思是他们几乎完全忽视了这一点。例如,任何使用 OpenAPI/Swagger 或仅使用全局 application/json
媒体类型的内容都不符合要求。 (Here are some more easy to spot conflicts with REST)
我的意思是,我也无法为您提供基于 HTTP 的符合 REST 的“API”的好示例。 (除了旧的 browser-server-html 东西)。
关于rest - REST 只能使用 HTTP 来实现还是也可以使用其他东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55887562/