【发布时间】:2017-12-10 07:36:55
【问题描述】:
来自List of HTTP status code (Wikipedia) 它说:
409 冲突
表示由于请求中的冲突而无法处理该请求,例如多个同时更新之间的编辑冲突。
还有
需要 428 前提条件 (RFC 6585)
源服务器要求请求是有条件的。旨在防止“丢失更新”问题,即客户端获取资源的状态,对其进行修改,然后将其放回服务器,同时第三方已修改服务器上的状态,从而导致冲突。”
然而,428 项中提到的“丢失更新” 问题不正是 中提到的“编辑冲突” 问题409项目?
那么问题是这两个状态码有什么区别,我们什么时候应该使用它们中的哪一个?
【问题讨论】:
-
许多开发人员只是忽略了所有这些状态代码,而是通过标题通知客户端。但是非常常见的代码当然仍在使用,例如身份验证相关状态。我相信客户(如 chrome、ff 等)甚至不会在 409 和 428 状态码之间产生区别
标签: http http-status-codes http-status http-status-code-409