Z RFC2616:
Metoda (głowę) można stosować do wytwarzania metainformation o jednostkę obserwowaną na żądanie, bez przenoszenia samą jednostkę ciało. Metoda ta jest często wykorzystywana do testowania łącza hipertekstowe do ważności, dostępności i niedawnej modyfikacji.
Powód, dla którego HEAD jest preferowany do GET, wynika z braku treści wiadomości w odpowiedzi, co powoduje, że używa się go w scenariuszach, w których chcesz sprawdzić, czy treść w ogóle się zmieniła - zmiana ostatniej modyfikacji czas lub długość treści zwykle oznacza to.
Również żądanie HEAD zapewni pewne informacje na temat konfiguracji serwera (czy jest IIS/Apache itd.), Chyba że serwer został zamaskowany; Oczywiście jest to dostępne we wszystkich odpowiedziach, ale HEAD jest preferowany, szczególnie gdy nie znasz rozmiaru odpowiedzi. HEAD to również najłatwiejszy sposób sprawdzenia, czy witryna jest w górę lub w dół; znowu nieistotność treści wiadomości sprawia, że HEAD jest idealnym kandydatem.
nie jestem tego pewien, ale czytników RSS/ATOM użyłby Head Over dostać się do ustalenia, czy zawartość paszy uległy zmianie.
Aby dodać przykład: Tworzę interfejs API "klienci", który udostępnia dane do wielu aplikacji za pośrednictwem interfejsu API REST. Aplikacje będą regularnie sprawdzać, czy klient został zaktualizowany, ale nie chcemy wykonywać wszystkich połączeń DB ani ponownie wysyłać całego klienta za pomocą kabla. Zamiast tego wielokrotnie trafialiśmy na API z żądaniem HEAD na/customer/XYZ, informując nas o ostatniej zmianie. –
Chcesz dodać kolejny przykład, mimo że jest to stary wpis. ElasticSearch zaleca używanie poleceń HEAD, jeśli chcesz sprawdzić, czy dokument istnieje. –
Nie używasz HEAD, aby zobaczyć, czy dokument się zmienił, używaj "If-Modified-Since" lub "If-None-Match" (np. Spójrz w dziennik sieciowy przeglądarki na odpowiedzi "304 Not Modified", podczas gdy ponowne załadowanie tej strony). A HEAD jest (przynajmniej teoretycznie) w pełni nadmiarowy od HTTP/1.1, co pozwala na 'Range: bytes = 0-0'. –