gpt4 book ai didi

rest - 在具有应该唯一的指定属性的记录已经存在的情况下,可以使用 409 HTTP 代码吗?

转载 作者:行者123 更新时间:2023-12-02 02:33:34 25 4
gpt4 key购买 nike

我有一个包含两个唯一列的表。是否可以为尝试创建具有重复列值的记录的 PUT 请求返回 409?

最佳答案

Is it OK to use a 409 HTTP code in the case when the record with specified property that should be unique already exists?

当然可以。

将状态代码视为元数据可能会有所帮助;它们是为通用组件提供对 HTTP 响应性质的粗粒度理解的信息,而不是 API 消费者的信息。

如果愿意,请考虑网络上的常见情况:我们发送 404 响应,以便浏览器(以及沿途的任何通用缓存)理解响应的主体是对客户端错误,以便他们可以正确操作本地缓存。

但是人类得到了失败鲸鱼的 HTML 表示。

鉴于状态代码的主要受众是机器而不是人,您可以通过查看不同代码的后果来了解状态代码的适当性。

事实是,对于许多代码......400 vs 403 vs 409 vs 其他......机器可以做的事情并不多,一个代码与另一个代码不同。在很多情况下,您所能期望的最好结果就是突出显示问题根源所在的 http 请求部分(方法 token 、URI、HTTP 版本、正文、授权...)。

409 对您的情况来说是一个不错的选择 - 特别是,它提醒注意请求的主体,通知当前请求的语义与资源的当前状态之间存在一些不兼容,并指示客户端可以解决冲突并重新提交请求。

但如果您改为选择“403”,则负面影响会非常小。从外面看,实际上并不重要。

关于rest - 在具有应该唯一的指定属性的记录已经存在的情况下,可以使用 409 HTTP 代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64659923/

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