简而言之:REST 是一种通过对组件间交互施加约束来定义的架构风格。利用其六项约束来审查客户端独立性、请求上下文、缓存、统一接口、分层以及可选的下载代码;仅凭 JSON 响应本身无法证明其中任何一项。
一个以 JSON 格式返回订单的端点,仍可能迫使每个客户端理解服务器的私有工作流。REST API 架构约束是一套规则,用于判断这些交互是否遵循“表征状态转移”(Representational State Transfer),而非仅仅使用 HTTP。这些约束涉及参与方必须了解彼此哪些信息、如何交换表征,以及它们能够以多大程度独立地进行变更。
以读取产品目录的聚合器为例。它需要检索记录、发现下一页、识别未发生变化的结果,并在工作者失败后恢复处理。这些需求立即揭示了架构选择。下一次请求是否包含自身上下文?服务器能否提示下一页?已保存的响应是否可复用?接替的工作者在继续处理前是否必须恢复先前不可见的对话?
本指南将这些问题作为设计审查的依据。 示例描述的是一项假设性的目录服务,而非某提供商的可执行 API。它们展示了如何在不将 REST 简化为多个端点名称或 HTTP 动词列表的情况下,对行为进行审查。您可以将相同的审查方法应用于您发布的 API、您维护的集成,或是调用他人服务的数据采集管道。




