PUT 到无法修改的数据的 HTTP 状态代码是什么?

What HTTP status code for a PUT to a data that cannot be modified?

我需要你帮我决定我应该使用什么 HTTP 状态码。

我有数据想用 PUT 请求修改。此数据可能有不同的状态: drafttoConfirmconfirmedrefuse 等。 我只想在数据状态为 drafttoConfirm.

时允许修改

我想知道如果日期的状态既不是 draft 也不是 toConfirm,我应该使用哪个 HTTP 状态代码? 400 表示错误请求? 405 方法不允许? 418?

非常感谢。

The 409 (Conflict) status code indicates that the request could not be completed due to a conflict with the current state of the target resource.

405 Method Not Allowed 也将是 fine