303
See Other
Yleinen selitys 303-tilakoodista
HTTP-tilakoodia 303 See Other käytetään ilmoittamaan asiakkaalle, että pyydetty resurssi ei ole suoraan saatavilla nykyisestä URL-osoitteesta, vaan se on käytettävissä toisen URL-osoitteen kautta. Palvelin palauttaa tämän vaihtoehtoisen URL-osoitteen asiakkaalle, ja asiakasta kehotetaan lähettämään uusi pyyntö tähän osoitteeseen HTTP-menetelmällä GET. Tätä tilakoodia käytetään usein onnistuneiden toimien jälkeen, kuten lomakkeen lähettämisen jälkeen, jotta käyttäjä voidaan ohjata uudelleen vahvistus- tai tulossivulle. Näin varmistetaan, että alkuperäistä pyyntöä ei lähetetä uudelleen, jos sivu päivitetään tai ladataan uudelleen. Uudelleenohjaus on yleensä automaattinen ja käyttäjälle huomaamaton.
HTTP-tilakoodin 303 määrittely
Tilakoodi 303 See Other osoittaa, että palvelin ohjaa käyttäjäagentin toiseen resurssiin, joka osoitetaan Location-otsikkokentässä olevalla URI:llä ja jonka tarkoituksena on antaa epäsuora vastaus alkuperäiseen pyyntöön. Käyttäjäagentti voi tehdä kyseiseen URI:hen kohdistuvan hakupyynnön (GET- tai HEAD-pyynnön, jos käytetään HTTP:tä), joka saatetaan myös ohjata uudelleen, ja esittää mahdollisen tuloksen vastauksena alkuperäiseen pyyntöön. Huomaa, että Location-otsikkokentässä olevaa uutta URI:tä ei pidetä kohde-URI:tä vastaavana.
Tämä tilakoodi soveltuu mihin tahansa HTTP-menetelmään. Sitä käytetään ensisijaisesti sallimaan POST-toiminnon tuloksen ohjaaminen käyttäjäagentin toiseen resurssiin, koska näin POST-vastausta vastaavat tiedot saadaan resurssina, joka voidaan erikseen tunnistaa, merkitä kirjanmerkkeihin ja tallentaa välimuistiin.
Vastaus 303 See Other GET-pyyntöön osoittaa, että alkuperäisellä palvelimella ei ole sellaista esitystä kohderesurssista, jonka palvelin voisi siirtää HTTP:n kautta. Location-kentän arvo viittaa kuitenkin resurssiin, joka kuvaa kohderesurssia, jolloin hakupyynnön tekeminen kyseiselle toiselle resurssille saattaa johtaa vastaanottajille hyödylliseen esitykseen, mutta ei kuitenkaan viittaa siihen, että se edustaisi alkuperäistä kohderesurssia. Huomaa, että vastaukset kysymyksiin siitä, mitä voidaan esittää, mitkä esitykset ovat riittäviä ja mikä voisi olla hyödyllinen kuvaus, ovat HTTP:n soveltamisalan ulkopuolella.
Head-pyyntöön annettavia vastauksia lukuun ottamatta 303 See Other-vastauksen esityksen tulisi sisältää lyhyt hypertekstimerkintä, jossa on hyperlinkki samaan URI-viittaukseen, joka on annettu Location-otsikkokentässä.
Lähde / Lainaus: HTTP-tilakoodi 303 See Other on määritelty 15.4.4:n RFC9110 kohdassa RFC9110.
HTTP-protokolla
Kuinka heittää 303-tilakoodi PHP:llä?
HTTP-tilakoodin 303 heittämiseen verkkosivulle voidaan käyttää PHP-funktiota http_response_code. Syntaksi on seuraava: http_response_code(303) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Testaa HTTP-tilakoodi 303
Jotta HTTP-tilakoodi (tässä tapauksessa 303 See Other) 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:
URL: https://http-statuscode.com/errorCodeExample.php?code=303
Tila: 303 See Other
Nuo: Network
IP-osoite: XX.XX.XX.XX
Selainyhteensopivuus 303-tilakoodin kanssa
Chrome | Yes |
Edge | Yes |
Firefox | Yes |
Opera | Yes |
Safari | Yes |
Chrome Android | Yes |
Firefox for Android | Yes |
Opera Android | Yes |
Safari on iOS | Yes |
Internet | Yes |
WebView Android | Yes |
Vakiot ohjelmointikielissä
HttpStatusCode.MultipleChoices
http.StatusSeeOther
Response::HTTP_SEE_OTHER
:see_other