gpt4 book ai didi

api - 可以使用 HTTP DELETE 停用记录吗?

转载 作者:行者123 更新时间:2023-12-04 03:04:35 27 4
gpt4 key购买 nike

我正在构建一个 RESTful API 命令来停用用户记录。使用 DELETE 来执行此操作是否符合规定,或者这应该是 PUT,因为记录正在更新为“停用”状态?还是只是口味问题?

最佳答案

DELETE 的语义意味着您实际上正在摆脱该对象。您在这里所做的似乎是对对象状态的修改。在这种情况下,PUTPATCH会更合适。

最好坚持使用您正在使用的统一接口(interface)的语义(在本例中为 HTTP 动词)。如果这些与您在应用程序中实际执行的操作相匹配,那么混淆就会减少。此外,如果您稍后决定使用 DELETE 怎么办?实际上应该删除记录而不是仅仅将其标记为“非事件”吗?现在您已经更改了 API 的行为。此外,如果您使用 DELETE ,您基本上遵循“最小意外原则”,这对 API 是有益的。最好有DELETE实际上做一个删除,而不是假装这样做。

另一方面,如果事实证明您需要保留数据以用于历史目的,那么从一个位置删除记录并将其移动到其他位置(例如,从一个表到另一个表)是完全可以的。在这种情况下,该记录应该对 future 的操作保持不可用(即,资源上的 GET 应该返回 404 )。

关于api - 可以使用 HTTP DELETE 停用记录吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15205938/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com