У меня есть служба REST-ful, которая использует заголовки ETags и If-Match для управления обновлениями.HTTP-статус ответа для отсутствующего заголовка if-match
Если клиент отправляет условный запрос с заголовком If-Match, а ETag устарел, я возвращаю условие 412 Precondition Failed, которое является рекомендуемым подходом к несоответствию ETag.
Но что, если клиент отправляет без заголовка If- *? Мое понимание 412 заключается в том, что оно применяется к предварительным условиям Клиента. Поскольку клиент не отправил заголовок If-Match, предварительных условий клиента не существует. Но если я хочу потребовать If-Match, какой ответ я должен использовать?
Мое мышление до сих пор возможно 400 Bad Request или 409 Conflict. Есть ли лучшие практики?
428 является правильным кодом. Правильное место для поиска вещей, хотя есть http://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml –