Jak wysyłać nagłówki HTTP za pomocą cURL: Kompleksowy przewodnik z przykładami
Opanuj wysyłanie i odbieranie nagłówków HTTP za pomocą cURL dzięki temu kompleksowemu przewodnikowi. Poznaj przykłady, niestandardowe nagłówki i wskazówki dotyczące rozwiązywania problemów.
W tym artykule 11 sekcji
- Wymagania wstępne
- Podstawowa składnia cURL
- Przykład 1: Wysyłanie żądania GET z niestandardowymi nagłówkami
- Przykład 2: Wysyłanie żądania POST z danymi JSON
- Przykład 3: Ustawianie wielu nagłówków
- Przykład 4: Wysyłanie plików cookie
- Przykład 5: Podążanie za przekierowaniami
- Przykład 6: Wysyłanie niestandardowego User-Agenta
- Przykład 7: Wysyłanie nagłówków żądań bez danych
- Przykład 8: Wysyłanie podstawowego uwierzytelniania
- Przykład 9: Debugowanie i tryb szczegółowy
Wysyłanie nagłówków HTTP za pomocą cURL jest podstawową umiejętnością dla każdego, kto pracuje z interfejsami API lub usługami internetowymi. Nagłówki HTTP przekazują istotne informacje o żądaniu, takie jak typ zawartości, autoryzacja i inne. cURL, potężne narzędzie wiersza poleceń do wykonywania żądań HTTP, umożliwia łatwe dostosowywanie i wysyłanie tych nagłówków. W tym przewodniku przeprowadzimy Cię przez proces wysyłania nagłówków HTTP za pomocą cURL, wraz z wieloma praktycznymi przykładami.

Wymagania wstępne#
Zanim przejdziemy do przykładów, upewnij się, że masz zainstalowany cURL w swoim systemie. Możesz sprawdzić, czy jest zainstalowany, uruchamiając:
curl --version
Jeśli nie jest zainstalowany, można go pobrać z oficjalnej strony cURL.
Podstawowa składnia cURL#
Podstawowa składnia wysyłania żądania HTTP za pomocą cURL to:
curl [options] [URL]
Aby dołączyć nagłówki HTTP do żądania, można użyć opcji -H lub -header, a następnie informacji nagłówka.
Przykład 1: Wysyłanie żądania GET z niestandardowymi nagłówkami#
Zacznijmy od prostego żądania GET do hipotetycznego API, zawierającego niestandardowy nagłówek. Załóżmy, że chcesz dołączyć nagłówek “Authorization” z kluczem API.
curl -H "Authorization: Bearer YOUR_API_KEY" https://api.example.com/resource
Zastąp YOUR_API_KEY swoim rzeczywistym kluczem API.
Przykład 2: Wysyłanie żądania POST z danymi JSON#
W tym przykładzie wyślemy żądanie POST z ładunkiem JSON i niestandardowym nagłówkiem typu zawartości.
curl -X POST -H "Content-Type: application/json" -d '{"name": "John", "email": "[email protected]"}' https://api.example.com/users
To polecenie określa metodę żądania jako POST (-X POST), ustawia typ zawartości na JSON (-H “Content-Type: application/json”) i dołącza dane JSON za pomocą -d.
Przykład 3: Ustawianie wielu nagłówków#
Do pojedynczego żądania cURL można dołączyć wiele nagłówków. Tutaj wysyłamy żądanie z nagłówkami “Authorization” i “User-Agent”.
curl -H "Authorization: Bearer YOUR_API_KEY" -H "User-Agent: MyClient/1.0" https://api.example.com/resource
Przykład 4: Wysyłanie plików cookie#
Aby wysłać pliki cookie wraz z żądaniem, należy użyć opcji -b lub -cookie, a następnie danych pliku cookie.
curl -b "session=12345; preferences=darkmode" https://api.example.com/dashboard
Ten przykład wysyła dwa pliki cookie: “sesja” i “preferencje”.
Przykład 5: Podążanie za przekierowaniami#
Domyślnie cURL nie śledzi przekierowań HTTP. Aby włączyć śledzenie przekierowań, należy użyć opcji -L lub -location.
curl -L https://example.com
Polecenie to podąży za wszelkimi przekierowaniami i wyświetli ostateczną zawartość strony.
Przykład 6: Wysyłanie niestandardowego User-Agenta#
Możesz ustawić niestandardowy nagłówek User-Agent, aby zidentyfikować swoje żądanie.
curl -H "User-Agent: MyCustomApp/1.0" https://api.example.com/resource
Niestandardowe nagłówki User-Agent są przydatne podczas interakcji z interfejsami API, które wymagają określonych agentów użytkownika.
Przykład 7: Wysyłanie nagłówków żądań bez danych#
Jeśli chcesz wysłać nagłówek bez treści żądania, możesz użyć opcji -I lub -head.
curl -I https://api.example.com/resource
To polecenie wysyła żądanie HEAD, które pobiera tylko nagłówki, a nie rzeczywistą zawartość.
Przykład 8: Wysyłanie podstawowego uwierzytelniania#
Aby wysłać dane uwierzytelniające HTTP Basic Authentication, można dołączyć nagłówek “Authorization” z nazwą użytkownika i hasłem zakodowanymi w Base64.
curl -H "Authorization: Basic BASE64_ENCODED_CREDENTIALS" https://api.example.com/resource
Zastąp BASE64_ENCODED_CREDENTIALS zakodowaną w Base64 nazwą użytkownika i hasłem (np. username:password).
Przykład 9: Debugowanie i tryb szczegółowy#
Podczas rozwiązywania problemów lub sprawdzania żądań i odpowiedzi HTTP można użyć trybu pełnego cURL z opcją -v lub -verbose.
curl -v https://api.example.com/resource
Spowoduje to wyświetlenie szczegółowych informacji o żądaniu i odpowiedzi, w tym nagłówków.
Wysyłanie nagłówków HTTP za pomocą cURL jest kluczową umiejętnością w pracy z usługami sieciowymi i interfejsami API. Dzięki przykładom przedstawionym w tym przewodniku można dostosowywać żądania, obsługiwać uwierzytelnianie, wysyłać pliki cookie i nie tylko. Po zapoznaniu się z możliwościami cURL będziesz dobrze przygotowany do efektywnej interakcji z różnymi usługami internetowymi.
