RESTful API 中,软删除应该用 DELETE 还是 PUT/PATCH 方法?

restful api 中,软删除应该用 delete 还是 put/patch 方法?

RESTful API 中,软删除的处理策略

软删除

在软删除中,数据不会被物理删除,而是将其删除标记字段更新为 true。对于 RESTful API 来说,可以使用以下方法进行软删除:

  • DELETE 方法:理论上,此方法用于删除资源,因此在逻辑上适合软删除。但是,DELETE 实际上会从数据库中删除记录,违背了软删除的原则。
  • PUT 或 PATCH 方法:此方法用于修改资源,因此更适合用于软删除。即更新删除标记字段。

个人的疑惑

对于使用 DELETE 还是 PUT/PATCH 方法进行软删除,取决于具体的 API 设计和个人偏好。个人认为,使用 PUT/PATCH 方法更符合软删除的本质,因为它们旨在修改资源,而 DELETE 实际上会删除资源。

非软删除(物理删除)

如果需要执行真正的物理删除,可以使用 DELETE 方法,但建议在请求有效负载中携带一个额外的参数来表示强制删除,如 {"force": true}。

建议的处理策略

对于软删除,推荐使用 PATCH 或 PUT 方法,具体取决于 API 设计。对于物理删除,可以使用 DELETE 方法,并通过请求有效负载中的参数来指定强制删除。

以上就是RESTful API 中,软删除应该用 DELETE 还是 PUT/PATCH 方法?的详细内容,更多请关注其它相关文章!