409 冲突
表示由于请求中的冲突而无法处理请求,例如多个同时更新之间的编辑冲突。
和
需要 428 前提条件 (RFC 6585)
源服务器要求请求是有条件的。旨在防止“丢失更新”问题,即客户端获取资源的状态,对其进行修改,然后将其放回服务器,同时第三方已修改服务器上的状态,从而导致冲突。”
但是, 428项中提到的“丢失更新”问题不正是409项中提到的“编辑冲突”问题吗?
所以问题是这两个状态码有什么区别,我们什么时候应该使用它们中的哪一个?
409 冲突
表示由于请求中的冲突而无法处理请求,例如多个同时更新之间的编辑冲突。
和
需要 428 前提条件 (RFC 6585)
源服务器要求请求是有条件的。旨在防止“丢失更新”问题,即客户端获取资源的状态,对其进行修改,然后将其放回服务器,同时第三方已修改服务器上的状态,从而导致冲突。”
但是, 428项中提到的“丢失更新”问题不正是409项中提到的“编辑冲突”问题吗?
所以问题是这两个状态码有什么区别,我们什么时候应该使用它们中的哪一个?
您发送 428 向客户端表明您只接受有条件的请求。
(条件请求是那些携带“条件”请求头字段的请求,如https://www.greenbytes.de/tech/webdav/rfc7232.html中所述)