curl

21 commands

21 shown

POST JSON данные Отправить JSON POST запрос с Bearer токеном curl -s -X POST https://api.example.com/v1/resource -H 'Content-Type: application/json' -H 'Authorization: Bearer <token>' -d '{"key":"value"}' | jq . #curl#network Следовать редиректам с verbose Полные заголовки запроса/ответа включая редиректы curl -sLv https://example.com 2>&1 | grep -E '^[<>*]' #curl#network#debug Замерить время запроса Замерить DNS, подключение и TTFB curl -so /dev/null -w 'DNS: %{time_namelookup}s\nConnect: %{time_connect}s\nTTFB: %{time_starttransfer}s\nTotal: %{time_total}s\n' https://example.com #curl#network#debug Скачать с прогрессом Скачать файл показывая прогресс-бар curl -L --progress-bar -o output.file https://example.com/file.tar.gz #curl#network Запрос с Basic Auth HTTP запрос с Basic Authentication curl -s -u user:password https://api.example.com/endpoint | jq . #curl#network Только HTTP статус код Получить только код ответа — удобно в скриптах curl -so /dev/null -w '%{http_code}' https://example.com #curl#network#debug POST с JSON телом Отправить JSON через POST curl -X POST https://api.example.com/v1/items -H 'Content-Type: application/json' -d '{"name":"foo"}' #curl Авторизация Bearer токеном Передать JWT/Bearer токен в заголовке Authorization curl -H 'Authorization: Bearer $TOKEN' https://api.example.com/me #curl#security Следовать редиректам подробно Следовать до 5 редиректов с полным выводом запрос/ответ curl -Lv --max-redirs 5 https://example.com #curl#debug Сохранить ответ в файл Тихая загрузка с ошибкой при неуспехе и следованием редиректам curl -sSL -o /tmp/result.json https://api.example.com/data #curl Время до первого байта Измерить TTFB и общее время запроса curl -o /dev/null -sS -w 'ttfb: %{time_starttransfer}s\ntotal: %{time_total}s\n' https://example.com #curl#monitoring Только заголовки ответа Напечатать HTTP заголовки ответа без тела curl -sI https://example.com #curl#debug Загрузить файл multipart Multipart загрузка файла с дополнительными полями формы curl -F 'file=@./report.pdf' -F 'user=alice' https://upload.example.com/api #curl HTTP/2 запрос Принудить HTTP/2 и проверить протокол в ответе curl --http2 -sI https://example.com | grep -i 'http\|alt-svc' #curl#network Кастомный DNS-резолвер Переопределить DNS для host:port (тест за CDN/балансировщиком) curl --resolve example.com:443:1.2.3.4 https://example.com #curl#network#debug Повторные попытки при ошибке Повторить до 5 раз с задержкой 2с при любой ошибке curl --retry 5 --retry-delay 2 --retry-all-errors https://api.example.com/healthz #curl POST с form-data Отправить данные формы в URL-encoded формате curl -d 'user=alice&pass=secret' -X POST https://auth.example.com/login #curl Авторизация клиентским сертификатом mTLS-запрос с клиентским сертификатом и кастомным CA curl --cert client.crt --key client.key --cacert ca.crt https://secure.example.com #curl#security Параллельная загрузка через xargs Скачать 5 URL параллельно и вывести коды ответа cat urls.txt | xargs -P 5 -I{} curl -sSL -o /dev/null -w '%{url_effective} %{http_code}\n' {} #curl Тест WebSocket handshake Проверить, что WebSocket upgrade отвечает кодом 101 curl -i -N -H 'Upgrade: websocket' -H 'Connection: Upgrade' -H 'Sec-WebSocket-Key: x3JJHMbDL1EzLkh9GBhXDw==' -H 'Sec-WebSocket-Version: 13' http://localhost:8080/ws #curl#network#debug Ограничить скорость загрузки Ограничить скорость загрузки до 1 МБ/с curl --limit-rate 1M -O https://example.com/bigfile.iso #curl
no commands match