422

Unprocessable Content

Официален
Поради семантична грешка заявката не може да бъде обработена.

Общо обяснение на код на състоянието 422

За съжаление този блок с текст е достъпен само на английски език.

The HTTP status code 422 Unprocessable Content is usually returned when the server received the client's request but could not process it due to a semantic error.

This essentially means that the client's request was not understood or accepted by the server because it may have been incomplete or incorrect. A common example of this is when the client attempts to send a form request to the server, but the form field was not filled in correctly.

The server will usually also send back a message in the body of the response giving more details about why the request is unprocessable. It is then up to the client to read and correct this information in order to make a successful request to the server.

Спецификация на HTTP код на състоянието 422

Кодът на състоянието 422 Unprocessable Content означава, че сървърът разбира типа на съдържанието на заявката (следователно кодът на състоянието 415 (Неподдържан тип медия) е неподходящ) и синтаксисът на заявката е правилен (следователно кодът на състоянието 400 (Лоша заявка) е неподходящ), но не е успял да обработи съдържащите се инструкции. Например това състояние на грешка може да възникне, ако тялото на XML заявка съдържа добре оформени (т.е. синтактично правилни), но семантично погрешни XML инструкции.

Източник / Цитат от: Кодът на състоянието 422 Unprocessable Content на HTTP е определен в раздел 11.2 на RFC4918.

Как да изхвърлим код на състоянието 422 с PHP?

За изхвърляне на HTTP статус код 422 на уеб страница може да се използва функцията http_response_code на PHP. Синтаксисът е следният: http_response_code(422) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Тестване на код 422 на състоянието HTTP

За да можете да показвате кода на състоянието на HTTP (в този случай 422 Unprocessable Content) и друга информация от страна на клиента, конзолата за разработка трябва да се отвори с F12. След това преминете към раздела "Мрежа". Сега страницата може да бъде отворена, като уебсайтът (пример index.php) трябва да се вижда в раздела "Мрежа". Той трябва да бъде избран и след това трябва да се избере разделът Herder. След това потребителят ще види следния резултат:

Код на състоянието 422 Unprocessable Content
Преглед
URL: https://http-statuscode.com/errorCodeExample.php?code=422
Статус: 422 Unprocessable Content
Тези: Network
IP адрес: XX.XX.XX.XX
Код на състоянието 422 Unprocessable Content

Как да създадете собствена страница за грешка с код на състоянието 422

Създаването на собствена страница за грешка 422 Unprocessable Content е сравнително лесно както с уеб сървърите "Apache", така и с "NGINX".

Apache Webserver

Уеб сървърът "Apache" е един от най-разпространените уеб сървъри в интернет. За да създадете своя собствена страница за грешка 422 Unprocessable Content в "Apache", трябва да се направи следната промяна в следния файл.

File: .htaccess
ErrorDocument 422 /errors/422.html

NGINX Webserver

Подобно на уеб сървъра "Apache", "NGINX" също се използва широко в интернет. За да създадете своя собствена страница за грешка 422 Unprocessable Content в "NGINX", трябва да се направи следната промяна в следния файл.

File: sites-enabled/default
error_page 422 /422.html;
location = /422.html {
    root /usr/share/nginx/html;
    internal;
}

Съвместимост на кода на състоянието 422 с браузъра

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Константи в езиците за програмиране

http.StatusUnprocessableEntity
Response::HTTP_UNPROCESSABLE_ENTITY
http.HTTPStatus.UNPROCESSABLE_ENTITY
:unprocessable_entity
Автор: Tony Brüser
Автор: Tony Brüser

Тони Брусер е ентусиазиран уеб разработчик със склонност към HTTP кодовете за състояние.

LinkedInGitHub