Spec-Zone.ru › HTTP

412 Ошибка предварительного условия

412 Ошибка предварительного условия

Ошибка клиента протокола HyperText Transfer Protocol (HTTP) 412 Precondition Failed указывает на то, что доступ к целевому ресурсу запрещён. Это происходит при условных запросах методами, отличными от GET или HEAD, когда условие, определённое заголовками If-Unmodified-Since или If-None-Match, не выполняется. В этом случае запрос, как правило, загрузка или изменение ресурса, не может быть выполнен, и в ответ отправляется данная ошибка.

Статус

412 Precondition Failed

Примеры

ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
ETag: W/"0815"

Избежание конфликтов при одновременном редактировании

С помощью заголовков ETag и If-Match можно обнаружить конфликты редактирования.

Например, при редактировании MDN текущее содержимое вики хэшируется и помещается в Etag в ответе:

ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"

При сохранении изменений на странице вики (пост данных) запрос POST будет содержать заголовок If-Match с ETag значениями для проверки актуальности данных.

If-Match: "33a64df551425fcc55e4d42a148795d9f25f89d4"

Если хэши не совпадают, это означает, что документ был изменён между запросами, и возникает ошибка 412 Precondition Failed.

Спецификации

Спецификация
Семантика HTTP
# status.412

Совместимость с браузерами

Рабочий стол Мобильные устройства
Chrome Edge Firefox Internet Explorer Opera Safari WebView Android Chrome Android Firefox for Android Opera Android Safari на iOS Samsung Internet
412
Да
12
Да
Да
Да
Да
Да
Да
Да
Да
Да
Да

Нижеприведённая информация была взята из репозитория MDN на GitHub (https://github.com/mdn/browser-compat-data).

См. также

  • 304
  • If-Unmodified-Since
  • If-None-Match
  • 428

© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/412

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API