HTTP 302
HTTP |
---|
Metody żądań |
Pola nagłówka |
Kody statusu odpowiedzi |
Bezpieczne metody kontroli dostępu |
Luki w zabezpieczeniach |
Kod stanu odpowiedzi HTTP 302 Znaleziono jest powszechnym sposobem wykonywania przekierowania adresu URL . Specyfikacja HTTP/1.0 (RFC 1945) początkowo zdefiniowała ten kod i nadała mu opis „Tymczasowo przeniesiony” zamiast „Znaleziony”.
Odpowiedź HTTP z tym kodem stanu dodatkowo zawiera adres URL w polu nagłówka Lokalizacja . Jest to zaproszenie do agenta użytkownika (np. przeglądarki internetowej) do wysłania drugiego, poza tym identycznego, żądania do nowego adresu URL określonego w polu lokalizacji. Efektem końcowym jest przekierowanie do nowego adresu URL.
Wiele przeglądarek internetowych zaimplementowało ten kod w sposób naruszający ten standard, zmieniając typ żądania nowego żądania na GET , niezależnie od typu zastosowanego w pierwotnym żądaniu (np. POST ). Z tego powodu HTTP/1.1 (RFC 2616) dodał nowe kody statusu 303 i 307 aby ujednoznacznić te dwa zachowania, przy czym 303 nakazuje zmianę typu żądania na GET, a 307 zachowuje pierwotnie wysłany typ żądania. Pomimo większej przejrzystości zapewnionej przez to ujednoznacznienie, kod 302 jest nadal używany w platformach internetowych w celu zachowania zgodności z przeglądarkami, które nie implementują specyfikacji HTTP/1.1.
W konsekwencji RFC 7231 (aktualizacja RFC 2616) zmienia definicję, aby umożliwić programom użytkownika przepisanie POST na GET.
Przykład
Żądanie klienta:
GET /index.html HTTP / 1.1 Host : www.example.com
Odpowiedź serwera:
HTTP / 1.1 302 Znaleziona lokalizacja : http://www.iana.org/domains/example/
Zobacz też
Linki zewnętrzne
- RFC 7230, RFC 7231, RFC 7232, RFC 7233, RFC 7234, RFC 7235 (HTTP 1.1)
- RFC 2616 (HTTP 1.1) (przestarzały)
- RFC 1945 (HTTP 1.0)