HTTP lokacija
HTTP lokacija je deo zaglavlja koji se vraća kao odgovor HTTP servera u dva slučaja:
- Da zatraži od Internet pregledača da učita drugu veb stranicu. U tom slučaju, lokaciono zaglavlje treba da bude poslato sa statusnim kodom tipa 3xx. On se prosleđuje kao deo odgovora servera kada je URI: privremeno premešten ili trajno premešten.
- Da prikupi informacije o lokaciji novo-kreiranog resursa. U ovom slučaju, lokaciono zaglavlje bi trebalo da bude poslato sa HTTP statusnim kodom 201 ili 202.[1]
Po RFC 2616 (HTTP 1.1) zahteva se kompletan apsolutni URI za preusmeravanje,[2] ali popularni Internet pregledači tolerišu prosleđivanje relativnog URL kao vrednosti za lokaciono zaglavlje. Shodno tome, predstojeća revizija HTTP/1.1 će učiniti relativni URL prihvatljivim.[3]
Primeri
уредиApsolutni URL, primeri
уредиInternet standard zahteva da apsolutni URI bude prosleđen uz lokaciono zaglavlje, što znači da on mora da sadrži shemu[4] (na primer: http:, https:, telnet:, mailto: )[5] i da poštuje sintaksu i semantiku određenu shemom. Na primer, sintaksa i semantika koje sheme-specific propisuje za HTTP URL zahteva "host" (adresu veb servera) i "apsolutnu putanju", sa opcionim komponentama "port" i "query". U slučaju da nedostaje apsolutna putanja, mora biti navedena kao "/" kada se koristi kao pristupna URI za resurs.[6]
Zahtev klijenta:
GET /index.html HTTP/1.1 Host: www.example.com
Odgovor servera:
HTTP/1.1 302 Found Location: http://www.example.org/index.php
Relativni URL, primeri
уредиOvaj primer, koji je nepravilan po trenutnom standardu, određuje apsolutni URI.[7] Ipak, svi popularni pregledači prihvataju relativan URL i to je ispravno po predstojećoj reviziji HTTP/1.1[8] .
Zahtev klijenta:
GET /blog HTTP/1.1 Host: www.example.com
Odgovor servera:
HTTP/1.1 302 Found Location: /blog/
Reference
уреди- ^ Leonard 2007, стр. 228–230
- ^ RFC 2616 (HTTP 1.1)
- ^ What are the Consequences for using Relative Location Headers?
- ^ RFC 3305 (URIs, URLs, and URNs)
- ^ IANA Uniform Resource Identifer (URI) Schemes
- ^ RFC [https://tools.ietf.org/html/rfc2616 2616 Section 3.2.2] (HTTP URL)
- ^ RFC 2616 Section 14.30 (Location)
- ^ draft-ietf-httpbis-p2-semantics-22 Section 7.1.2 (Location)
Литература
уреди- Leonard, Richardson (2007). RESTful Web Services. Sebastopol: O'Reilly. стр. 228—230. ISBN 978-0-596-52926-0.