Analizator nagłówków HTTP

Nagłówki HTTP przenoszą metadane dotyczące żądań i odpowiedzi. To narzędzie parsuje kompletne wiadomości HTTP, w tym linię żądania/statusu, nagłówki i treść. Analizuje nagłówki bezpieczeństwa (HSTS, CSP), uwierzytelnianie (Basic, Bearer), ciasteczka, konfigurację CORS i dyrektywy buforowania. Treść jest automatycznie formatowana i podświetlana składniowo na podstawie Content-Type (JSON, HTML, XML).

Specyfikacje

Typowe zastosowania

  • Debugowanie żądań API skopiowanych z zakładki Sieć w DevTools przeglądarki
  • Analiza wyjścia curl -i lub curl -v z nagłówkami i treścią
  • Audyt nagłówków bezpieczeństwa pod kątem zgodności (zalecenia OWASP)
  • Rozwiązywanie problemów z preflight CORS i żądaniami cross-origin
  • Inspekcja nagłówków uwierzytelniania i konfiguracji ciasteczek
  • Weryfikacja zachowania buforowania dla CDN i buforowania w przeglądarce

Funkcje

  • Parsowanie pełnych żądań HTTP (GET /path HTTP/1.1)
  • Parsowanie odpowiedzi HTTP z kodami statusu i frazami przyczyny
  • Formatowanie i podświetlanie składniowe treści (JSON, HTML, XML, CSS)
  • Dekodowanie nagłówków Authorization (poświadczenia Basic, tokeny Bearer)
  • Analiza nagłówków bezpieczeństwa (HSTS, CSP, X-Frame-Options, X-Content-Type-Options)
  • Parsowanie atrybutów Set-Cookie (Secure, HttpOnly, SameSite, wygaśnięcie)
  • Wyodrębnianie i lista ciasteczek z nagłówków
  • Wyświetlanie nagłówków CORS (Access-Control-Allow-Origin itp.)
  • Wyjaśnianie dyrektyw Cache-Control (max-age, no-cache, private)

Przyklady

Odpowiedź API z treścią JSON

Wypróbuj →

Kompletna odpowiedź HTTP z nagłówkami i treścią JSON, jak z wyjścia curl -i.

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Cache-Control: max-age=3600, public
X-Frame-Options: DENY
Strict-Transport-Security: max-age=31536000; includeSubDomains

{
  "status": "success",
  "data": {
    "id": 12345,
    "name": "Example User"
  }
}

Żądanie HTTP z uwierzytelnianiem

Wypróbuj →

Żądanie z uwierzytelnianiem tokenem Bearer i ciasteczkami.

GET /api/users HTTP/1.1
Host: api.example.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...
Accept: application/json
Cookie: session=abc123; theme=dark

Wskazowki

  • Użyj "curl -i URL" aby dołączyć nagłówki odpowiedzi do wyjścia.
  • W DevTools przeglądarki kliknij prawym przyciskiem żądanie i "Kopiuj jako cURL", aby uzyskać pełne żądanie.
  • HSTS (Strict-Transport-Security) nakazuje przeglądarkom używać wyłącznie HTTPS dla domeny.
  • CSP (Content-Security-Policy) kontroluje, które zasoby strona może ładować.
  • Atrybut ciasteczka SameSite pomaga zapobiegać atakom CSRF.

Zrozumienie Analizator nagłówków HTTP

Nagłówki HTTP to pary klucz-wartość wysyłane między klientem a serwerem jako część każdego żądania i odpowiedzi HTTP. Przenoszą metadane o wiadomości: typ zawartości, dyrektywy buforowania, poświadczenia uwierzytelniania i polityki bezpieczeństwa. Nagłówki pojawiają się po linii żądania lub statusu i przed opcjonalną treścią, oddzielone od treści pustą linią.

Nagłówki żądania dostarczają kontekst o kliencie i pożądanej odpowiedzi. Host identyfikuje serwer docelowy. Accept i Content-Type negocjują format mediów. Authorization przenosi poświadczenia (Basic, Bearer, klucze API). Cookie wysyła przechowywane dane sesji. User-Agent identyfikuje oprogramowanie klienta.

Nagłówki odpowiedzi kontrolują, jak klient obsługuje zawartość. Cache-Control i ETag regulują zachowanie buforowania. Set-Cookie ustanawia stan po stronie klienta. Content-Security-Policy ogranicza ładowanie zasobów w celu łagodzenia XSS. Strict-Transport-Security wymusza HTTPS. Nagłówki CORS (Access-Control-Allow-Origin i powiązane) kontrolują udostępnianie zasobów cross-origin, co jest jednym z najczęściej błędnie konfigurowanych aspektów API webowych.

Zrozumienie nagłówków jest niezbędne do debugowania aplikacji webowych. Gdy API zwraca nieoczekiwane wyniki, nagłówki często ujawniają przyczynę: brakujący Content-Type, wygasły token uwierzytelniania, dyrektywa buforowania serwująca nieaktualne dane lub polityka CORS blokująca żądanie.

Dyrektywa Cache-Control to jeden z najczęściej źle rozumianych nagłówków. Dyrektywa no-cache nie oznacza "nie buforuj" — oznacza, że cache musi rewalidować z serwerem źródłowym przed użyciem zapisanej odpowiedzi. Odpowiedź nadal może być buforowana. Dyrektywa no-store to ta, która faktycznie zapobiega buforowaniu i powinna być używana dla wrażliwych danych. Dla często zmieniającej się zawartości, która korzysta z żądań warunkowych, no-cache w połączeniu z ETag lub Last-Modified jest odpowiednią strategią.

Błędy CORS pojawiają się, gdy żądanie przeglądarki do innego originu nie zawiera nagłówka odpowiedzi Access-Control-Allow-Origin. Serwer musi dołączyć ten nagłówek z originem żądającym lub * dla publicznych API. Gdy w grę wchodzą poświadczenia (ciasteczka lub nagłówki Authorization), wildcard nie jest dozwolony — nagłówek musi określać dokładny origin. Żądania preflight OPTIONS dodatkowo wymagają Access-Control-Allow-Methods i Access-Control-Allow-Headers. Uwierzytelnianie tokenem Bearer używa formatu Authorization: Bearer <token>, gdzie token to zazwyczaj JWT lub nieprzezroczysty token dostępu z procesu OAuth 2.0. W przeciwieństwie do ciasteczek, tokeny Bearer nie są wysyłane automatycznie — klient musi jawnie dołączać nagłówek do każdego żądania.

Każda strona internetowa powinna ustawić minimalny zestaw nagłówków bezpieczeństwa. Strict-Transport-Security (HSTS) zapewnia, że zawsze używany jest HTTPS. Content-Security-Policy łagodzi XSS, ograniczając ładowanie zasobów. X-Content-Type-Options: nosniff zapobiega wykrywaniu typu MIME. X-Frame-Options chroni przed clickjackingiem, a Referrer-Policy kontroluje, jakie informacje są wysyłane w nagłówku Referer. API powinny dodatkowo skonfigurować odpowiednie nagłówki CORS, aby kontrolować, które originy mogą wysyłać żądania.

← Powrot do wszystkich narzedzi