422

Unprocessable Content

Virallinen
Pyyntöä ei voitu käsitellä semanttisen virheen vuoksi.

Yleinen selitys 422-tilakoodista

Tämä tekstilohko on valitettavasti saatavilla vain englanniksi.

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-tilakoodin 422 määrittely

Tilakoodi 422 Unprocessable Content tarkoittaa, että palvelin ymmärtää pyynnön sisältämän kokonaisuuden sisältötyypin (joten tilakoodi 415 (Ei tuettu mediatyyppi) ei ole asianmukainen) ja että pyynnön sisältämän kokonaisuuden syntaksi on oikea (joten tilakoodi 400 (Huono pyyntö) ei ole asianmukainen), mutta se ei pystynyt käsittelemään sen sisältämiä ohjeita. Tämä virhetilanne voi esiintyä esimerkiksi, jos XML-pyyntörunko sisältää hyvin muotoiltuja (eli syntaktisesti oikeita), mutta semanttisesti virheellisiä XML-ohjeita.

Lähde / Lainaus: HTTP-tilakoodi 422 Unprocessable Content on määritelty 11.2:n RFC4918 kohdassa RFC4918.

Kuinka heittää 422-tilakoodi PHP:llä?

HTTP-tilakoodin 422 heittämiseen verkkosivulle voidaan käyttää PHP-funktiota http_response_code. Syntaksi on seuraava: http_response_code(422) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testaa HTTP-tilakoodi 422

Jotta HTTP-tilakoodi (tässä tapauksessa 422 Unprocessable Content) ja muut tiedot voidaan näyttää asiakaspuolella, kehityskonsoli on avattava F12-näppäimellä. Siirry sitten "Network"-välilehdelle. Nyt sivu voidaan avata, verkkosivuston (esimerkki index.php) pitäisi näkyä verkko-välilehdellä. Tämä on valittava ja sen jälkeen on valittava Herder-osio. Käyttäjä näkee sitten seuraavan tuloksen:

Tilakoodi 422 Unprocessable Content
Yleiskatsaus
URL: https://http-statuscode.com/errorCodeExample.php?code=422
Tila: 422 Unprocessable Content
Nuo: Network
IP-osoite: XX.XX.XX.XX
Tilakoodi 422 Unprocessable Content

Miten luoda oma virhesivu tilakoodille 422?

Oman 422 Unprocessable Content-virhesivun luominen on suhteellisen helppoa sekä Apache- että NGINX-verkkopalvelimilla.

Apache Webserver

Verkkopalvelin "Apache" on yksi Internetin yleisimmistä verkkopalvelimista. Jotta voit luoda oman 422 Unprocessable Content-virhesivun "Apachessa", seuraavaan tiedostoon on tehtävä seuraava muutos.

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

NGINX Webserver

Samanlainen kuin verkkopalvelin "Apache", "NGINX" on myös laajalti käytössä Internetissä. Jotta voit luoda oman 422 Unprocessable Content-virhesivun "NGINX"-palvelimessa, seuraavaan tiedostoon on tehtävä seuraava muutos.

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

Selainyhteensopivuus 422-tilakoodin kanssa

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

Vakiot ohjelmointikielissä

http.StatusUnprocessableEntity
Response::HTTP_UNPROCESSABLE_ENTITY
http.HTTPStatus.UNPROCESSABLE_ENTITY
:unprocessable_entity

Viihdyttäviä meemejä HTTP-tilakoodista 422

Kirjoittaja: Tony Brüser
Kirjoittaja: Tony Brüser

Tony Brüser on innostunut web-kehittäjä, jolla on mieltymys HTTP-statuskoodeihin.

LinkedInGitHub