【发布时间】:2019-01-05 15:34:51
【问题描述】:
我想了解解决以下问题的正确请求/响应结构和 API 设计。 我有 2 个实体,比如说 Abc 和 Xyz。 Xyz 的外键是 Abc。 因此,要为 Xyz 创建一条记录,必须有映射的 Abc 记录。
现在从请求结构的角度来看,我需要为 Abc 创建一个类似的 POST 请求
POST /Abc
这非常简单。但问题在于 Xyz。 要求是每当用户来创建 Xyz 时,他也可以请求更新附加的 Abc 记录。 例如, 我为 Abc 创建了一条 id 为 5 的记录。现在,每当我想创建相应的 Xyz 记录时,我都会请求更新 id 为 5 的 Abc 记录,并为此外键创建一条新的 Xyz 记录。 所以, 补丁/ABC 和 发布 /XYZ 但是客户端只请求一次,并在单个 URI 上共享整个数据。
那么,在单个 URI 上处理多个 HTTP 方法的正确方法是什么? 我应该创建 POST 请求还是 PATCH?
我无法创建 2 个请求,因为客户希望这个过程是事务性的。
【问题讨论】:
-
您应该告诉我们您使用的是什么语言。
-
这与 API 设计问题有关,而不是语言。但作为参考,我使用的是 Spring-Java。
标签: rest api http-method