Site icon EfmSoft

Что означает HTTP-статус 428 (Precondition Required)?

 
Предыдущий Следующий
HTTP_STATUS_UPGRADE_REQUIRED HTTP_STATUS_TOO_MANY_REQUESTS

HTTP_STATUS_PRECONDITION_REQUIRED

Что означает HTTP 428 (HTTP_STATUS_PRECONDITION_REQUIRED)

HTTP_STATUS_PRECONDITION_REQUIRED соответствует ответу HTTP 428: сервер требует условного запроса для защиты от потерянных обновлений.

Получите текущий ETag и отправьте изменение с If-Match вместо безусловной перезаписи.

428 обычно применяется для защиты от lost update. Сервер ожидает условие вроде If-Match с актуальным ETag; сначала получите текущую версию ресурса, затем отправьте mutation с валидатором. Слепой retry без precondition сохраняет ту же гонку и должен снова отклоняться.

HTTP 428 часто используют, чтобы заставить клиента выполнить условное обновление через If-Match и тем самым избежать lost update. Получите текущее представление и ETag, примените изменение к актуальной версии и отправьте требуемое условие. Удалять precondition ради успешного запроса опасно: операция может затереть чужое изменение, ради предотвращения которого сервер и потребовал условный запрос.

Ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.

Exit mobile version