Jak wysyłać żądania POST za pomocą cURL

Jak wysyłać żądania POST za pomocą cURL

cURL to wszechstronne narzędzie wiersza poleceń zaprojektowane do bezproblemowego przesyłania danych przez różne protokoły sieciowe, w tym HTTP, HTTPS i FTP. Dostępne na wszystkich głównych systemach operacyjnych, cURL stało się standardowym narzędziem do wysyłania żądań HTTP z wiersza poleceń. Jego wieloplatformowe narzędzie obsługuje protokoły takie jak HTTP, HTTPS, FTP i IMAP, ułatwiając wysyłanie żądań do interfejsów API i scrapowanie stron internetowych. Ze względu na szeroką dostępność i obsługę protokołu, cURL jest powszechnie wymieniany w dokumentacji interfejsu API REST jako szybki sposób testowania wywołań interfejsu API bezpośrednio z wiersza poleceń.

W tym samouczku dowiesz się, jak wykonywać żądania POST za pomocą cURL, co umożliwia efektywną komunikację z serwerami poprzez proste instrukcje wiersza poleceń.

Czym jest żądanie POST?

Żądanie POST to metoda HTTP używana do wysyłania danych do serwera i jest jedną z najpopularniejszych metod HTTP. W przeciwieństwie do żądań GET, w których dane są zawarte w adresie URL, żądania POST przesyłają dane w treści żądania. Umożliwia to dyskretny transfer danych i unika ograniczeń długości adresu URL narzucanych przez przeglądarki w żądaniach GET.

Żądania POST są często używane do przesyłania formularzy, przesyłania plików i wysyłania danych JSON do interfejsów API. Ponieważ dane są przechowywane w treści żądania, nie są widoczne w historii przeglądarki, a w przeciwieństwie do żądań GET, żądania POST zazwyczaj nie są buforowane przez przeglądarki.

Praktyczne przypadki użycia żądań POST cURL

Żądania POST cURL są szeroko stosowane w różnych scenariuszach, w tym:

  • Testowanie interfejsów API REST – programiści używają cURL do szybkiego testowania punktów końcowych interfejsu API przed ich wdrożeniem w aplikacjach.
  • Automatyzacja przesyłania formularzy – Używając cURL możesz automatyzować interakcje z formularzami internetowymi, przesyłając dane bez konieczności ręcznego wprowadzania danych.
  • Przesyłanie plików – wiele interfejsów API umożliwia przesyłanie plików za pomocą żądań POST, co sprawia, że cURL jest skutecznym narzędziem do automatyzacji tego procesu.
  • Interakcja z systemami uwierzytelniania – programiści mogą używać cURL do uwierzytelniania użytkowników i uzyskiwania dostępu do chronionych zasobów przy użyciu tokenów API lub danych uwierzytelniających.
  • Scraping i integracja danych – wyodrębnianie i integrowanie danych z różnych źródeł online jest uproszczone dzięki możliwościom żądania POST pakietu cURL.

Wykonywanie żądania POST za pomocą cURL

Aby rozpocząć używanie cURL do żądań POST, upewnij się, że jest zainstalowany w systemie. Jeśli jeszcze go nie zainstalowałeś, zapoznaj się z naszym przewodnikiem dotyczącym konfigurowania cURL. Poniżej znajduje się tabela referencyjna podsumowująca podstawowe opcje cURL:

Krótka flaga

Długa flaga

Argument(y)

Opis

-X

--wniosek

(użyj „POST” dla żądań POST)

Definiuje metodę HTTP dla żądania

-B

--ciastko

Wysyła pliki cookie w żądaniu

-C

--słoik-na-ciasteczka

Zapisuje otrzymane pliki cookie do pliku

-D

--dane

Przesyła dane w żądaniu POST

-F

--ponieść porażkę

Zapewnia cichą awarię w przypadku błędów serwera

-F

--formularz

<nazwa=treść>

Przesyła dane formularza (application/x-www-form-urlencoded)

-H

--chodnikowiec

nagłówek/@plik

Zawiera niestandardowe nagłówki HTTP

-I

--włączać

Wyświetla nagłówki HTTP w odpowiedzi

-l

--głowa

Pobiera tylko nagłówki

-k

--niepewny

Omija weryfikację SSL

-L

--lokalizacja

Śledzi przekierowania (3XX)

-o

--wyjście

Zapisuje dane wyjściowe do określonego pliku

-O

--nazwa-zdalna

Zapisuje dane wyjściowe ze zdalną nazwą pliku

-S

--cichy

Tłumi komunikaty wyjściowe

-w

--gadatliwy

Umożliwia szczegółowe wyjście (debugowanie)

-w

--wypisać

Szczegóły odpowiedzi na wyjścia

Aby wyświetlić pełną listę dostępnych opcji, użyj:

curl --pomoc

Typowe błędy i jak je naprawić

Mimo że cURL jest potężny, użytkownicy często napotykają błędy podczas wysyłania żądań POST. Oto kilka typowych problemów i rozwiązań:

  • curl: (6) Nie można rozwiązać hosta – Oznacza to, że nazwa domeny jest niepoprawna lub występuje problem z rozwiązywaniem DNS. Sprawdź ponownie adres URL.
  • curl: (7) Nie udało się połączyć z hostem – wskazuje, że serwer jest niedostępny. Upewnij się, że serwer jest online i masz aktywne połączenie z internetem.
  • curl: (35) Błąd połączenia SSL – Jeśli żądanie nie powiedzie się z powodu problemów z SSL, spróbuj użyć -k, aby ominąć weryfikację SSL.
  • HTTP 400 Bad Request – Oznacza to, że serwer odrzucił żądanie, często z powodu nieprawidłowego formatu danych. Sprawdź typ zawartości i ładunek danych.
  • HTTP 401 Unauthorized – występuje, gdy wymagane jest uwierzytelnienie, ale brakuje go lub jest nieprawidłowe. Upewnij się, że klucze API lub poświadczenia są poprawnie przekazywane za pomocą -u lub -H "Authorization: Bearer <token>".

Podstawowa składnia żądania POST

curl -X POST -d "Witaj" https://example.com/api

W tym poleceniu:

  • -X POST określa typ żądania.
  • -d „Witaj” definiuje wysyłane dane.
  • https://example.com/api jest adresem docelowym.

Ustawianie nagłówków typu zawartości

curl -X POST -H "Typ zawartości: text/plain" -d "Witaj" https://example.com/api

Dodanie -H „Content-Type: text/plain” informuje serwer, że formatem danych jest zwykły tekst.

Wysyłanie danych JSON

curl -X POST -H "Typ zawartości: application/json" -d '{"key":"value"}' https://example.com/api

Użycie typu zawartości application/json gwarantuje, że dane zostaną prawidłowo zinterpretowane jako JSON.

Wysyłanie danych XML

curl -X POST -H "Typ zawartości: application/xml" -d '<?xml version="1.0" encoding="UTF-8"?><root><name>John Doe</name><age>30</age></root>' https://example.com/api

Wysyłanie plików za pomocą POST

curl -X POST -F "file=@/path/to/img.png" https://example.com/api/upload

W przypadku przesyłania wielu plików:

curl -X POST -F "file=@/path/to/img1.png" -F "file=@/path/to/img2.png" https://example.com/api/upload

Uwierzytelnianie za pomocą cURL

curl -u nazwa_użytkownika:hasło https://example.com/login

Zastąp nazwę użytkownika i hasło rzeczywistymi danymi uwierzytelniającymi.

Wniosek

cURL upraszcza interakcje HTTP dzięki swoim potężnym i elastycznym opcjom wiersza poleceń. Dzięki opanowaniu żądań POST programiści mogą sprawnie zarządzać komunikacją API, transmisją danych i przesyłaniem plików. Niezależnie od tego, czy musisz testować punkty końcowe API, automatyzować przesyłanie formularzy, czy też zeskrobywać dane ze stron internetowych, cURL zapewnia lekkie i skuteczne rozwiązanie. Eksperymentuj z cURL, aby zoptymalizować swój przepływ pracy!

Pamiętaj, że Plisio oferuje również:

Twórz faktury Crypto za pomocą 2 kliknięć and Przyjmuj darowizny kryptowalutowe

14 integracje

10 biblioteki dla najpopularniejszych języków programowania

19 kryptowalut i 12 łańcuch bloków

Ready to Get Started?

Create an account and start accepting payments – no contracts or KYC required. Or, contact us to design a custom package for your business.

Make first step

Always know what you pay

Integrated per-transaction pricing with no hidden fees

Start your integration

Set up Plisio swiftly in just 10 minutes.