412

Precondition Failed

Ametlik Alamstaatuse koodid
eeltingimused ei olnud rahuldavad, taotlus ei olnud edukas

HTTP staatuskoodi 412 täpsustamine

Statuskood 412 Precondition Failed näitab, et üks või mitu taotluse päise väljades esitatud tingimust on serveris testimisel valeks osutunud. See vastusekood võimaldab kliendil seada eeltingimusi ressursi hetkeseisundile (selle praegustele esitustele ja metaandmetele) ja seega takistada taotluse meetodi rakendamist, kui sihtressurss on ootamatus seisundis.

Allikas / Tsitaat: HTTP-kood 412 Precondition Failed on määratletud jaotises 4.2 jaotises RFC7232.

Kuidas PHP-ga 412 staatuskoodi visata?

Veebilehel HTTP-koodi 412 kuvamiseks võib kasutada PHP-funktsiooni http_response_code. Süntaks on järgmine: http_response_code(412) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testige HTTP-koodi 412

Selleks, et kuvada HTTP staatuskoodi (antud juhul 412 Precondition Failed) ja muud teavet kliendi poolel, tuleb arenduskonsool avada klahviga F12. Seejärel navigeerige vahekaardile "Network". Nüüd saab lehekülje avada, veebileht (näiteks index.php) peaks olema nähtav võrgu vahekaardil. See tuleb valida ja seejärel tuleb valida Herder sektsioon. Seejärel näeb kasutaja järgmist tulemust:

Staatuse kood 412 Precondition Failed
Ülevaade
URL: https://http-statuscode.com/errorCodeExample.php?code=412
Staatus: 412 Precondition Failed
Need: Network
IP-aadress: XX.XX.XX.XX
Staatuse kood 412 Precondition Failed

Kuidas lahendada probleem 412 staatuskoodiga?

1. põhjuse mõistmine

Kontrollige eeltingimuse päise: Tehke kõigepealt kindlaks, milline eeltingimus oli teie taotluse päises määratud ja ei olnud täidetud. See võib olla If-Match, If-None-Match, If-Modified-Since, If-Unmodified-Since või If-Range päis.

2. Ressursi metaandmete kontrollimine

E-Tag ja Last-Modified päis: Kontrollige taotletud ressursi metaandmeid. Võrrelge ressursi E-Tag väärtust või Last-Modified kuupäeva taotluses määratud väärtusega, et tuvastada lahknevusi.

3. Taotluse parandamine

pealkirjade kohandamine: Kui kontroll näitab, et taotluse tingimuspealkirjade väärtused ei vasta ressursi hetkeseisundile, kohandage neid vastavalt.

Eemalda mittevajalikud päised: Mõnel juhul võib olla kasulik eemaldada teatavad tingimuspealkirjad, kui need ei ole taotluse jaoks tingimata vajalikud.

4. Vahemälu haldamine

Vahemälu kontroll: Veendu, et taotlus ei ole mõjutatud ressursi vahemälu olekust. Vajaduse korral tühjendage vahemälu või kasutage vahemälu vältimiseks Cache-Control päiseid.

5. Serveri konfiguratsioon

Konfiguratsiooni kontroll: Kontrollige, kas serveris on mingeid erireegleid või konfiguratsioone, mis võivad põhjustada seda probleemi, eriti seoses tingimuslike päringute töötlemisega.

6. Suhtlemine API/serveri arendajaga

Dokumentatsioon ja tugi: Kui probleem püsib, vaadake API või serveri dokumentatsiooni ja vajadusel võtke ühendust tugi või arendajaskonnaga, et saada edasist abi.

7. Suhtlemine API/serveri arendajaga

Dokumentatsioon ja tugi. Veakäitlus rakenduses

Kindla veakäitluse: Rakendage oma rakenduses kindel veakäitlus, et reageerida asjakohaselt staatuskoodile 412 Precondition Failed, näiteks saata taotlus uuesti kohandatud päistega või teavitada kasutajat veast.

8. Testimine ja jälgimine

Kompleksne testimine: testige oma rakendust erinevates tingimustes, et tagada selle korrektne reageerimine 412 Precondition Failed-veale.

Monitooring: kasutage selliste vigade tuvastamiseks ja analüüsimiseks jälgimisvahendeid, et saaksite probleemidele ennetavalt reageerida.

Kuidas luua oma vealehekülg staatuskoodi 412 jaoks

Oma 412 Precondition Failed vealehe loomine on nii "Apache" kui ka "NGINX" veebiserverite puhul suhteliselt lihtne.

Apache Webserver

Veebiserver "Apache" on üks levinumaid veebiservereid Internetis. Oma 412 Precondition Failed vealehe loomiseks "Apache'is" tuleb teha järgmine muudatus järgmises failis.

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

NGINX Webserver

Sarnaselt veebiserverile "Apache" on ka "NGINX" internetis laialdaselt kasutusel. Oma 412 Precondition Failed vealehe loomiseks "NGINXis" tuleb teha järgmine muudatus järgmises failis.

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

412 staatuskoodi brauserite ühilduvus

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

Konstandid programmeerimiskeeltes

HttpStatusCode.PreconditionFailed
http.StatusPreconditionFailed
Response::HTTP_PRECONDITION_FAILED
httplib.PRECONDITION_FAILED
http.client.PRECONDITION_FAILED
http.HTTPStatus.PRECONDITION_FAILED
:precondition_failed

Staatusekoodi 412 alamkoodid

Alamstaatusekoodid on puhtalt tehnilised ja neid ei tohiks kunagi kasutajale saata. Näiteks, kui kuvatakse staatuskood 412.1, võib seda logida, kuid kasutajale saadetakse staatuskood 412.:
412.0 Precondition failed
HTTP IIS, Mitteametlik
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser on entusiastlik veebiarendaja, kellel on kalduvus HTTP staatuskoodide suhtes.

LinkedInGitHub