Generator i konstruktor poleceń cURL
Twórz polecenia curl w przeglądarce — ustaw metodę, nagłówki, autoryzację i treść, a gotowe polecenie pojawi się natychmiast. Presety dla Bearer, POST JSON i przesyłania plików. Bezpłatnie, prywatnie, bez rejestracji.
Czym jest polecenie curl?
curl to narzędzie wiersza poleceń do przesyłania danych przez HTTP i dziesiątki innych protokołów. Polecenie curl to nazwa pliku binarnego, zestaw flag i adres URL — na przykład `curl -X POST https://api.example.com/users -H 'Content-Type: application/json' -d '{"name":"Ada"}'`. Ponieważ curl jest dostępny praktycznie na każdej maszynie z Linuksem, macOS i nowoczesnym systemem Windows, to uniwersalny sposób na testowanie API, odtwarzanie żądań z dokumentacji lub sprawdzanie stanu usługi w skrypcie CI. Zwięzłość, która czyni go potężnym, sprawia też, że trudno go zapamiętać — właśnie dlatego wizualny konstruktor jest pomocny.
Każde polecenie curl ma tę samą anatomię. Metoda (`-X GET`, `-X POST`, …) ustawia czasownik HTTP, domyślnie GET. Adres URL to endpoint, z parametrami zapytania dołączonymi po znaku `?`. Nagłówki (`-H 'Klucz: Wartość'`, wielokrotne) przenoszą metadane, takie jak `Accept` i `Content-Type`. Autoryzacja to po prostu specjalny nagłówek — `-H 'Authorization: Bearer …'` dla tokena, `-u user:pass` dla autoryzacji Basic lub niestandardowe `-H 'X-API-Key: …'`. Treść (`-d` dla danych surowych lub formularza, `-F` dla multipart i przesyłania plików) przenosi payload. Wreszcie flagi opcji, takie jak `-L` (podążaj za przekierowaniami), `-i` (dołącz nagłówki odpowiedzi) i `-v` (tryb szczegółowy), kształtują zachowanie. Narzędzie rozkłada każdą z tych części jako pole formularza i przebudowuje polecenie na żywo.
Sięgnij po generator poleceń curl, gdy w przeciwnym razie zmagałbyś się z cytowaniem, zapominałbyś nagłówka `Content-Type` przy POST z JSON lub ręcznie składał upload multipart. Konstruktor prawidłowo stosuje cytowanie z apostrofami bezpieczne dla powłoki, koduje ciąg zapytania i dołącza właściwe nagłówki dla każdego typu treści — a następnie kopiujesz polecenie, któremu możesz zaufać. Wyczerpującą dokumentację flag z 40+ uruchamialnymi przykładami znajdziesz w towarzyszącej ściągawce curl; do kodowania trudnych wartości ciągu zapytania możesz użyć naszego kodera URL.
Wszystko odbywa się w przeglądarce. Twoje tokeny, poświadczenia, adresy URL i treści żądań są składane z JavaScript po stronie klienta i nigdy nigdzie nie są wysyłane — możesz budować polecenia dla prawdziwych produkcyjnych endpointów z prawdziwymi kluczami API i nic nie opuści urządzenia.
# Plain GET — curl defaults to GET
curl https://api.example.com/users
# GET with a Bearer token (auth is just a header)
curl https://api.example.com/me \
-H 'Authorization: Bearer YOUR_TOKEN'
# POST a JSON body — note the Content-Type header
curl -X POST https://api.example.com/users \
-H 'Content-Type: application/json' \
-d '{"name":"Ada","role":"admin"}'
# Multipart file upload — '@' reads the file from disk
curl -X POST https://api.example.com/upload \
-F 'file=@report.pdf' \
-F 'title=Q3 report' Kluczowe funkcje
Wizualny konstruktor żądań
Rozłóż całe żądanie jako pola formularza — metoda, URL, parametry zapytania, nagłówki, autoryzacja, treść i opcje — zamiast zapamiętywać kolejność flag i zasady cytowania. Koniec z zgadywaniem, czy URL idzie przed czy po `-d`.
Polecenie na żywo z kopiowaniem i eksportem
Polecenie curl jest przebudowywane przy każdym naciśnięciu klawisza na dole strony. Skopiuj je do schowka jednym kliknięciem lub wyeksportuj .sh, aby pobrać uruchamialny skrypt powłoki, który możesz wrzucić bezpośrednio do repozytorium lub zadania CI.
Pełna obsługa autoryzacji
Token Bearer, autoryzacja Basic (`-u user:pass`) i niestandardowe nagłówki klucza API, każdy emitowany w dokładnym formacie oczekiwanym przez serwery. Wybierz schemat, wklej poświadczenie, a właściwy nagłówek `Authorization` lub niestandardowy zostanie wygenerowany za Ciebie.
Każdy typ treści
Surowy JSON (z automatycznie dodanym nagłówkiem `Content-Type`), pola formularza `application/x-www-form-urlencoded` i uploady `multipart/form-data`, w których każde pole można przełączyć na plik z prefiksem `@`.
Sześć presetów jednym kliknięciem
GET z Bearer, POST JSON, przesyłanie formularza, autoryzacja Basic, Pobierz `-o` i Verbose debug wypełniają cały formularz jednym dotknięciem. Zacznij od działającego żądania dla najczęstszych zadań API i dostosuj je.
Wyjście wieloliniowe i jednoliniowe
Przełączaj między zwartym poleceniem jednoliniowym do szybkiego wklejania a wersją z kontynuacją odwrotnym ukośnikiem, łatwą do czytania w skrypcie lub przeglądania w pull requeście. To samo polecenie, dwie formy.
100% prywatność w przeglądarce
Tokeny, URL-e, nagłówki i treści żądań są składane wyłącznie po stronie klienta i nigdy nie opuszczają urządzenia — sprawdź to w zakładce Sieć. Bezpieczne dla produkcyjnych endpointów i żywych poświadczeń bez żadnego ujawniania danych.
Zbudowane dla workflow DevTools
Zaprojektowane wokół codziennej pętli testowania API i odtwarzania żądań z opcji „Copy as cURL” w DevTools przeglądarki. Karta Konwertuj, która parsuje wklejone polecenie curl do fetch, requests, Go, PHP, Ruby i Node.js, pojawi się w następnej wersji.
Alternatywy curl i klienty HTTP
HTTPie
CLI, składnia przyjazna człowiekowiNowoczesne CLI z kolorowym wyjściem i zwięzłą składnią (`http POST api.example.com/users name=Ada`). Domyślnie ustawia `Content-Type` JSON. Przyjazniejsze do użytku interaktywnego; curl wygrywa pod względem powszechności i przenośności skryptowania.
wget
CLI, skupiony na pobieraniuNajlepszy do rekurencyjnego pobierania i lustrzanego kopiowania stron; domyślnie śledzi przekierowania i ponawia próby. Słabszy od curl dla dowolnych metod, niestandardowych nagłówków i testowania API. Często preinstalowany obok curl na Linuksie.
Postman
Aplikacja GUIPełne GUI do budowania, zapisywania i udostępniania żądań z kolekcjami, środowiskami i synchronizacją zespołu. Świetny do eksploracji API; może importować/eksportować curl. Cięższy niż jednoliniowe polecenie do szybkich sprawdzeń lub CI.
Insomnia
Aplikacja GUILżejsza, open-source'owa alternatywa dla Postmana z przejrzystym konstruktorem żądań i importem/eksportem curl. Dobry do organizowania żądań API; podobnie jak Postman, to więcej niż potrzeba do pojedynczego wywołania ze skryptu.
fetch() / requests
Klienty HTTP w kodzieJavaScript `fetch()` i Python `requests` to sposób na wykonanie wywołania z kodu aplikacji. Najpierw zbuduj i zweryfikuj żądanie jako curl, a następnie przetłumacz — nadchodząca karta Konwertuj wygeneruje równoważny kod dla fetch, requests i innych klientów.
Przykłady poleceń curl
Proste żądanie GET
curl https://api.example.com/users
Bez flagi metody curl domyślnie używa GET. To najprostsze możliwe żądanie — pobiera zasób i wyświetla treść odpowiedzi w terminalu. Dodaj parametry zapytania w konstruktorze, a zostaną automatycznie zakodowane w URL i dołączone na końcu (`?page=2&limit=50`).
GET z tokenem Bearer
curl https://api.example.com/me \ -H 'Authorization: Bearer YOUR_TOKEN'
Najczęstsze uwierzytelnione wywołanie REST API. Preset z autoryzacją Bearer automatycznie dodaje nagłówek `Authorization: Bearer …`. Aby sprawdzić zawartość JWT przed wysłaniem, wklej token do naszego dekodera JWT.
POST z treścią JSON
curl -X POST https://api.example.com/users \
-H 'Content-Type: application/json' \
-d '{"name":"Ada","role":"admin"}' Klasyka generatora żądań curl: typ treści JSON ustawia `-X POST`, dołącza nagłówek `Content-Type: application/json` i przekazuje payload z `-d`. Następnie sformatuj odpowiedź API naszym formaterem JSON.
POST z formularzem (urlencoded)
curl -X POST https://api.example.com/login \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'username=ada&password=s3cret'
Klasyczne przesyłanie formularza HTML. Każda para `-d field=value` jest łączona znakiem `&` i wysyłana jako `application/x-www-form-urlencoded`. curl koduje znaki zarezerwowane; dodaj pola w sekcji treści formularza, a narzędzie złoży ciąg za Ciebie.
Przesyłanie pliku metodą multipart
curl -X POST https://api.example.com/upload \ -F 'file=@report.pdf' \ -F 'title=Q3 report'
Polecenie przesyłania pliku curl używa `-F` dla `multipart/form-data`. Poprzedź wartość znakiem `@`, aby dołączyć plik z dysku; swobodnie mieszaj pola plikowe i tekstowe. curl automatycznie ustawia granicę multipart i `Content-Type` — nigdy nie ustawiaj ich ręcznie.
Pobieranie do pliku
curl -L -o archive.zip \ https://example.com/files/archive.zip
Zapisz treść odpowiedzi do nazwanego pliku za pomocą `-o`, a `-L` śledzi przekierowania do właściwego URL pobierania (typowe przy CDN i linkach do plików wydań). Użyj `-O` zamiast `-o`, aby zachować nazwę pliku serwera.
Autoryzacja Basic
curl -u ada:s3cret \ https://api.example.com/private
Autoryzacja basic curl używa `-u user:pass`; curl koduje poświadczenia w Base64 i przesyła je w nagłówku `Authorization: Basic …`. Zawsze używaj autoryzacji Basic przez HTTPS — Base64 to kodowanie, nie szyfrowanie, i jest trywialnie odwracalne.
Tryb debugowania Verbose
curl -v -i https://api.example.com/health
Gdy żądanie działa nieprawidłowo, `-v` wyświetla pełną linię żądania, wszystkie wysłane i odebrane nagłówki oraz uzgadnianie TLS; `-i` dołącza nagłówki odpowiedzi do wyjścia treści. Pierwsza rzecz do sprawdzenia, gdy API zwraca nieprawidłowy kod stanu.
Jak zbudować polecenie curl
- 1
Wybierz metodę HTTP
Wybierz GET, POST, PUT, PATCH, DELETE, HEAD lub OPTIONS. curl domyślnie używa GET; wybranie POST lub innego czasownika dodaje `-X METODA` do wygenerowanego polecenia. Możesz też kliknąć preset, aby ustawić metodę i pasującą treść jednym kliknięciem.
- 2
Wprowadź URL i parametry zapytania
Wpisz URL żądania (np. `https://api.example.com/users`). Dodaj parametry zapytania jako pary klucz/wartość, a narzędzie zakoduje je w URL i automatycznie dołączy jako `?klucz=wartość&…` do adresu — bez ręcznego kodowania.
- 3
Dodaj nagłówki i autoryzację
Dodaj nagłówki żądania jako pary klucz/wartość, a następnie wybierz schemat autoryzacji: Brak, token Bearer, Basic (nazwa użytkownika/hasło) lub niestandardowy nagłówek klucza API. Właściwy nagłówek `Authorization` lub niestandardowy zostanie wygenerowany w dokładnym formacie oczekiwanym przez serwer.
- 4
Ustaw treść żądania
Dla żądań POST/PUT/PATCH wybierz typ treści: wklej surowy JSON (nagłówek `Content-Type` zostanie dodany za Ciebie), zbuduj pola formularza urlencoded lub złóż upload multipart i przełącz dowolne pole na plik z prefiksem `@`.
- 5
Przełącz opcje
Włącz potrzebne flagi — podążaj za przekierowaniami (`-L`), wyłącz weryfikację TLS (`-k`), tryb szczegółowy (`-v`), dołącz nagłówki (`-i`), kompresja (`--compressed`), zapisz do pliku (`-o`), limit czasu połączenia lub proxy (`-x`). Każdy przełącznik aktualizuje polecenie na żywo.
- 6
Kopiuj, eksportuj lub resetuj
Skopiuj gotowe polecenie, wyeksportuj .sh, aby pobrać je jako skrypt, lub Resetuj, aby wyczyścić formularz. Użyj przełącznika Wieloliniowy, aby wybrać między wyjściem jednoliniowym a z kontynuacją odwrotnym ukośnikiem przed skopiowaniem.
Częste błędy curl
Brak -X przy metodzie z treścią
Wysyłanie treści z `-d` implikuje POST, ale jeśli potrzebujesz PUT lub PATCH, musisz to powiedzieć explicite z `-X`. Pominięcie tego wysyła treść jako POST, a serwer zwraca nieprawidłowy status lub odrzuca żądanie.
# Intended a PATCH, but -d alone implies POST
curl -d '{"role":"admin"}' \
https://api.example.com/users/7 # Set the verb explicitly
curl -X PATCH -d '{"role":"admin"}' \
-H 'Content-Type: application/json' \
https://api.example.com/users/7 Brak Content-Type przy POST z JSON
Wysyłanie JSON z `-d` NIE ustawia nagłówka `Content-Type` — curl domyślnie używa `application/x-www-form-urlencoded`. Większość API nie może wtedy sparsować treści i zwraca 400 lub 415. Zawsze dołączaj typ zawartości JSON (lub użyj presetu treści JSON, który dodaje go za Ciebie).
# Server sees urlencoded, not JSON — 400/415
curl -X POST https://api.example.com/users \
-d '{"name":"Ada"}' # Declare the JSON content type
curl -X POST https://api.example.com/users \
-H 'Content-Type: application/json' \
-d '{"name":"Ada"}' Escape w apostrofach vs cudzysłowach podwójnych
Wewnątrz cudzysłowów podwójnych powłoka rozbudowuje `$`, backticki i `!`, psując JSON lub łamiąc go przy `$variable` wewnątrz payloadu. Apostrofy przekazują treść dosłownie. Używaj apostrofów dla treści JSON; przełącz na cudzysłowy podwójne tylko w `cmd.exe`, który nie honoruje apostrofów.
# $name gets expanded by the shell to empty string
curl -d "{\"user\":\"$name\"}" \
https://api.example.com/users # Single quotes send the body literally
curl -d '{"user":"$name"}' \
https://api.example.com/users Użycie -d w żądaniu GET
Dodanie `-d` do żądania po cichu zamienia je w POST. Jeśli chciałeś GET z parametrami zapytania, umieść je w URL (lub użyj `-G`, aby złożyć dane `-d` do ciągu zapytania). `-d` w GET to jedna z najczęstszych przyczyn problemu z niedziałającym żądaniem GET.
# -d makes this a POST, not a GET curl -d 'page=2&limit=50' \ https://api.example.com/users
# Query string on the URL keeps it a GET curl 'https://api.example.com/users?page=2&limit=50'
Kontynuacja linii w Windows: ^ vs \
Odwrotny ukośnik (`\`) kontynuuje polecenie w następnej linii w bash, Git Bash i WSL. W `cmd.exe` znakiem kontynuacji jest karetka (`^`), a PowerShell używa backtick (`` ` ``). Wklejenie polecenia z kontynuacją odwrotnym ukośnikiem do `cmd` psuje je — przełącz to narzędzie na wyjście jednoliniowe dla Windows `cmd`.
:: cmd.exe — backslash is not a continuation char
curl -X POST https://api.example.com/users \
-d '{"name":"Ada"}' :: cmd.exe — one line, or use ^ to continue
curl -X POST https://api.example.com/users -d "{\"name\":\"Ada\"}" Niezakodowane spacje w URL
Surowa spacja (lub `&`, `#`, `?`) w URL lub wartości zapytania psuje polecenie — powłoka dzieli argument i curl widzi skrócony URL. Zakoduj wartość procentowo (spacja staje się `%20`) lub pozwól curl ją zakodować za pomocą `--data-urlencode`. Pola parametrów zapytania w tym narzędziu kodują automatycznie.
# Space splits the argument — curl sees two args curl https://api.example.com/search?q=hello world
# Encode the space (or quote the whole URL) curl 'https://api.example.com/search?q=hello%20world'
Typowe zastosowania
- Testowanie REST API
- Buduj i wysyłaj żądania do endpointów REST bez opuszczania terminala: ustaw metodę, wklej token Bearer, wyślij treść JSON i odczytaj odpowiedź. Najszybszy sposób na potwierdzenie, że API działa prawidłowo, zanim napiszesz kod klienta.
- Odtwarzanie żądań z dokumentacji
- Dokumentacja API pokazuje endpointy i parametry, ale rzadko kompletne, gotowe do skopiowania polecenie. Wypełnij metodę, URL, nagłówki i autoryzację tutaj i otrzymaj polecenie curl, które działa od razu — bez walki z cytowaniem i brakującymi nagłówkami `Content-Type`.
- Skrypty smoke-test w CI/CD
- Wygeneruj polecenie curl do sprawdzania stanu lub smoke testu po wdrożeniu, a następnie wyeksportuj .sh, aby wrzucić je do potoku. Dodaj `--connect-timeout` i `--max-time`, aby zawieszony endpoint nie blokował budowania, i sprawdzaj kody stanu za pomocą `-w`.
- Przesyłanie i pobieranie plików
- Złóż upload `multipart/form-data` z `-F field=@file` lub zbuduj pobieranie `-L -o filename`, które śledzi przekierowania do CDN. Zakoduj trudne nazwy plików lub wartości zapytania najpierw naszym koderem URL.
- Debugowanie webhooków
- Odtwórz payload webhooka, wysyłając POST z tą samą treścią JSON, którą wysyła dostawca, z właściwymi nagłówkami podpisu i `Content-Type`. Odtwórz dokładne żądanie lokalnie, aby debugować, dlaczego handler je odrzucił.
- Odtwarzalne raporty błędów
- Wklej pojedyncze, autonomiczne polecenie curl do raportu błędu lub PR, aby każdy mógł odtworzyć dokładne żądanie — metodę, nagłówki, placeholder autoryzacji i treść. Znacznie czytelniejsze niż opisywanie żądania w prozie.
- Nauka flag curl
- Zobacz, jak każdy wybór w formularzu mapuje się na prawdziwą flagę — wybierz autoryzację Basic i obserwuj, jak pojawia się `-u`, dodaj treść JSON i obserwuj, jak dołącza się nagłówek `Content-Type`. Praktyczny sposób nauki składni, uzupełniony naszą ściągawką curl.
- Przygotowanie żądania do konwersji na kod
- Najpierw zbuduj i zweryfikuj żądanie jako curl, a następnie przetłumacz je na klienta HTTP swojej aplikacji. Nadchodząca karta Konwertuj zamieni wklejone polecenie curl na fetch, requests, Go, PHP, Ruby i Node.js — zacznij od polecenia curl, o którym wiesz, że działa.
Flagi i składnia curl — dokumentacja
- Cytowanie i escape w powłoce
- Narzędzie opakowuje wartości w apostrofy, najbezpieczniejszą formę w powłokach POSIX, ponieważ nic wewnątrz ciągu w apostrofach nie jest rozwijane. Dosłowny apostrof wewnątrz wartości jest emitowany jako sekwencja `'\''` (zamknięcie cytowania, escape apostrofu, ponowne otwarcie cytowania). W `cmd.exe` przejdź na cudzysłowy podwójne; Git Bash i WSL uruchamiają wygenerowane polecenia z apostrofami bez zmian.
- -d vs --data-raw vs --data-binary
- `-d`/`--data` usuwa znaki nowej linii i powrotu karetki z treści — odpowiednie dla par `key=value`, stratne dla treści wieloliniowej. `--data-raw` jest takie samo, ale nie traktuje wiodącego `@` jako nazwy pliku. `--data-binary` wysyła bajty dokładnie tak jak podane (użyj `@file`, aby przesłać surową zawartość pliku). Wszystkie trzy implikują POST, chyba że metoda zostanie nadpisana.
- Multipart (-F) vs urlencoded (-d)
- `-F field=value` produkuje `multipart/form-data` z wygenerowaną granicą — wymagane dla uploadów plików (`-F file=@path`) i formularzy mieszanych plik/tekst. `-d field=value` produkuje `application/x-www-form-urlencoded`, pojedynczy ciąg połączony znakiem `&`. Nigdy nie ustawiaj ręcznie `Content-Type` dla multipart; curl oblicza granicę i sam ustawia nagłówek.
- Kodowanie nagłówka autoryzacji
- Autoryzacja Bearer wysyła `Authorization: Bearer
` dosłownie (RFC 6750). Autoryzacja Basic z `-u user:pass` jest kodowana w Base64 do `Authorization: Basic ` — to kodowanie, nie szyfrowanie, więc używaj HTTPS. Klucz API to dowolny niestandardowy nagłówek wymagany przez usługę, np. `X-API-Key: `. - Kodowanie ciągu zapytania
- Parametry zapytania dodane w konstruktorze są kodowane procentowo i dołączane jako `?klucz=wartość&klucz2=wartość2`. Znaki zarezerwowane (spacje, `&`, `=`, `#`) są escape'owane, aby URL był prawidłowy. Dla pól treści, które muszą być zakodowane, własne `--data-urlencode` curl obsługuje kodowanie w czasie żądania.
- Zachowanie przy przekierowaniach (-L)
- Bez `-L` curl wyświetla odpowiedź 301/302 i zatrzymuje się. Z `-L` podąża za nagłówkiem `Location` do ostatecznego URL. Zauważ, że curl usuwa nagłówek `Authorization`, gdy przekierowanie przechodzi na inny host (domyślne zachowanie bezpieczeństwa); użyj `--location-trusted` tylko wtedy, gdy rozumiesz implikacje.
- Skompresowane odpowiedzi
- `--compressed` dodaje nagłówek `Accept-Encoding` reklamujący obsługę gzip/deflate/brotli i transparentnie dekompresuje odpowiedź, oszczędzając przepustowość. Zdekodowana treść jest identyczna jak w żądaniu nieskompresowanym — wyłącznie optymalizacja transferu, bezpieczna do włączenia w większości wywołań API.
- Wyjście: -o vs -O
- `-o filename` zapisuje treść odpowiedzi do nazwanego przez Ciebie pliku; `-O` zapisuje ją pod zdalną nazwą pliku z ścieżki URL. Oba tłumią normalny zrzut na stdout. Połącz z `-L`, aby przekierowania rozwiązały się do prawdziwego zasobu przed zapisaniem pliku.
Dobre praktyki dla żądań curl
- Nigdy nie koduj na stałe sekretów w udostępnianych poleceniach
- Polecenie curl, które wkleisz do PR, ticketu lub czatu, będzie czytane przez innych i indeksowane przez narzędzia. Zastąp tokeny i hasła placeholderem (`YOUR_TOKEN`) lub odwołaj się do zmiennej środowiskowej (`-H "Authorization: Bearer $API_TOKEN"`). Dla długich poświadczeń curl może odczytać nagłówek z pliku z `-H @headerfile`, dzięki czemu sekret nigdy nie pojawi się w historii powłoki.
- Preferuj --data-binary @file dla payloadów binarnych
- Gdy treścią jest plik, którego bajty mają znaczenie — obraz, podpisany payload, JSON z istotnym białym znakiem — użyj `--data-binary @file`, a nie `-d @file`. Proste `-d` usuwa znaki nowej linii i powrotu karetki, po cichu uszkadzając zawartość binarną i wieloliniową. `--data-binary` wysyła plik dokładnie tak jak jest na dysku.
- Cytuj wartości nagłówków
- Zawsze opakowuj wartości `-H` w cudzysłowy: `-H 'Content-Type: application/json'`. Bez cytowania spacja po dwukropku dzieli argument i curl widzi zniekształcony nagłówek. Apostrofy zapobiegają też rozwijaniu przez powłokę `$`, `*` i innych znaków specjalnych wewnątrz wartości — dokładnie to, co to narzędzie domyślnie emituje.
- Używaj --compressed, aby oszczędzać przepustowość
- Dodaj `--compressed` do wywołań API i pobierania, aby zażądać kodowania gzip/brotli i mieć curl transparentnie dekompresujący. W przypadku API intensywnie korzystających z JSON może to zmniejszyć rozmiar transferu o 70–90% bez żadnych zmian w widzianej odpowiedzi — darmowe zyski w skryptach, które wielokrotnie odpytują endpointy.
- Ustalaj limity czasu w skryptach
- W dowolnym automatycznym kontekście dodaj `--connect-timeout` i `--max-time`, aby powolny lub zawieszony endpoint nie mógł blokować potoku na zawsze. Sprawdzenie stanu z `--max-time 10` kończy się szybko i pozwala CI przejść dalej. Połącz z `--retry N`, aby pochłaniać przejściowe problemy sieciowe bez natychmiastowego rezygnowania.
- Weryfikuj z -v przed automatyzacją
- Zanim wpiszesz polecenie curl do skryptu lub zadania cron, uruchom je raz z `-v`, aby zobaczyć dokładną linię żądania, nagłówki i uzgadnianie TLS. To najszybszy sposób na wykrycie złej metody, brakującego `Content-Type` lub nagłówka autoryzacji, który nie został dołączony — debuguj interaktywnie, a następnie usuń `-v` dla produkcji.
Najczęściej zadawane pytania
Do czego służy to narzędzie?
Czy moje dane (tokeny, URL-e) są gdzieś wysyłane?
Jak wysłać żądanie POST z JSON w curl?
Jak dodać token Bearer do żądania curl?
Jak przesłać plik za pomocą curl?
Czy mogę zaimportować polecenie skopiowane z DevTools przeglądarki ("Copy as cURL")?
Czym różni się curl w systemie Windows?
Jaka jest różnica między -d, --data-raw a --data-binary?
Jak wysłać cookies za pomocą curl?
Jak podążać za przekierowaniami?
Jak ustawić limit czasu żądania?
Powiązane narzędzia
Zobacz wszystkie narzędzia →Konwerter systemów liczbowych — binary, hex, decimal i octal
Narzędzia konwersji
Konwertuj między systemami binarnym, szesnastkowym, dziesiętnym i ósemkowym (2–36) w czasie rzeczywistym. Bezpłatnie i prywatnie — w przeglądarce.
Koder i dekoder Base64
Kodowanie i formatowanie
Zakoduj i zdekoduj Base64 online za darmo. Konwersja w czasie rzeczywistym z pełną obsługą UTF-8 i emoji. 100% w przeglądarce, bez rejestracji.
Konwerter wielkości liter — UPPER, lower, camelCase
Przetwarzanie tekstu
Konwertuj tekst między UPPERCASE, lowercase, Title Case, Sentence case, camelCase, PascalCase, snake_case, kebab-case, CONSTANT_CASE i 6 innymi formatami natychmiast. Za darmo, w przeglądarce, bez rejestracji.
Konwerter kolorów — HEX, RGB, HSL i OKLCH
Narzędzia konwersji
Konwertuj HEX na RGB, HSL, OKLCH, OKLAB i CMYK w przeglądarce — skopiuj dowolny format jednym kliknięciem. Darmowy, bez rejestracji, kolory nigdy nie opuszczają strony.
Generator crontab i kreator wyrażeń cron
Data i czas
Buduj, waliduj i dekoduj wyrażenia cron w przeglądarce. Podgląd kolejnych uruchomień w czasie lokalnym lub UTC. Składnia POSIX 5-polowa, presety, opis po polsku. Za darmo, prywatnie, bez rejestracji.
Konwerter CSV na JSON
Kodowanie i formatowanie
Konwertuj CSV na JSON w przeglądarce. RFC 4180, wnioskowanie typów, nagłówek, big-int safe. 100% prywatnie, bez wysyłki.