Skip to content

Mga flag ng curl na ipinaliwanag

Mga flag ng curl na ginagamit araw-araw, hinati ayon sa gawain: hubugin ang kahilingan, itakda ang mga header, magpatunay, magpakilala, kontrolin ang output, sundan ang mga redirect, i-tune ang koneksyon, at mag-debug. Pinagsasama ng bawat hilera ang flag sa isang makatotohanang pagtawag.

Nagpapadala ang curl ng HTTP request at pi-print ang response body. Nasa mga flag ang karamihan ng lakas nito: pumipili sila ng method, nagdudugtong ng mga header at data, humahawak ng auth, at nagdedesisyon kung ano ang pi-print. Ipinapakita ang mahabang form kapag mas malinaw ito; ang maikling form ay ang nag-iisang titik. Ilagay ang mga URL sa mga quote para hindi kinakain ng shell ang query string.

Talaan ng sanggunian · 54 bagay
54 of 54 rows
Hugis ng kahilingan
Itinatakda ang HTTP method.curl -X POST https://api.test
Nagdaragdag ng request header.curl -H "Accept: application/json" URL
Nagpapadala ng body (nagtatakda ng POST at default na content type).curl -d "name=Ada" URL
Nagdaragdag ng mga value ng -d bilang query params sa GET.curl -G -d "q=hi" URL
Nagpapadala ng multipart form data (pag-upload ng file).curl -F "file=@photo.png" URL
Nagpapadala ng form data na may inilapat na URL encoding.curl --data-urlencode "name=Ada Lovelace" URL
Nag-a-upload ng file gamit ang PUT.curl -T big.zip URL
Nagdaragdag ng upload sa remote file sa halip na palitan ito.curl -a -T log.txt ftp://server.test/logs/log.txt
JSON at API
Nagpapadala ng JSON gamit ang tamang content type.curl -H "Content-Type: application/json" -d '{"a":1}' URL
Nagpapadala ng nilalaman ng file bilang body.curl -d @body.json URL
Nagpapadala ng JSON nang hindi itinatakda nang mano-mano ang mga header (curl 7.82+).curl --json '{"a":1}' URL
Awtentikasyon
HTTP Basic auth na may user at password.curl -u ada:s3cr3t URL
Nagpapadala ng OAuth bearer token.curl --oauth2-bearer TOKEN URL
Nagpapadala ng anumang token scheme nang mano-mano.curl -H "Authorization: Bearer TOKEN" URL
Nagpapakita ng client certificate at ng key nito para sa mutual TLS.curl --cert client.pem --key key.pem URL
Tinitingnan ang server laban sa isang CA bundle file.curl --cacert ca.pem URL
Tinitingnan ang server laban sa isang direktoryo ng mga CA.curl --capath /etc/ssl/certs URL
Nagpapadala ng kahilingan sa pamamagitan ng proxy.curl -x http://proxy.test:8080 URL
Laktawan ang TLS verification para lang sa proxy hop.curl -x https://proxy.test:8443 --proxy-insecure URL
Nangangailangan ng TLS 1.3 bilang pinakamababang bersyon.curl --tlsv1.3 URL
Pagkakakilanlan
Nagpapadala ng custom na User-Agent string.curl -A "Mozilla/5.0" URL
Nagpapadala ng Referer header.curl -e https://example.com/page URL
Nagpapadala ng cookies kasama ng kahilingan.curl -b "session=abc123" URL
Nagsasave ng response cookies sa isang file.curl -c cookies.txt URL
Output
Isinusulat ang body sa isang file.curl -o page.html URL
Nagsasave ng body gamit ang remote file name.curl -O https://site/file.tgz
Nagpi-print ng response headers sa itaas ng body.curl -i URL
Kumukuha lang ng headers (nagpapadala ng HEAD).curl -I URL
Itinatago ang progress meter at mga error.curl -s URL
Nagpi-print ng format string pagkatapos ng body (timing, status).curl -w "%{http_code}\n" -o /dev/null URL
Lumalabas nang non-zero sa mga HTTP error at lumalaktaw sa error body.curl -f URL
Lumalabas nang non-zero sa mga HTTP error ngunit pi-print pa rin ang body.curl --fail-with-body URL
Pinangangalanan ang naka-save na file mula sa Content-Disposition header.curl -OJ URL
Nagpapatuloy ng naputol na transfer mula sa kung saan ito huminto.curl -C - -O URL
Nagpapakita ng progress bar sa halip na default na meter.curl -# -O URL
Nagpi-print ng mga error kahit tumatakbo nang silent.curl -sS URL
Isinusulat ang response headers sa isang file.curl -D headers.txt URL
Humihiling ng compressed na response at dine-decode ito.curl --compressed URL
Gumagawa ng mga kulang na direktoryo sa -o path.curl -o cache/api/data.json --create-dirs URL
Mga redirect at koneksyon
Sinasunod ang mga 3xx redirect.curl -L URL
Pinakamataas na segundo ng paghihintay sa TCP connect.curl --connect-timeout 5 URL
Pinakamataas na segundo para sa buong kahilingan.curl --max-time 30 URL
Lumalaktaw sa TLS certificate verification.curl -k https://self-signed.test
Muling sumusubok ng mga transient error hanggang N beses.curl --retry 3 URL
Muling sumusubok sa anumang error, hindi lang sa mga transient.curl --retry 3 --retry-all-errors URL
Pipilitin ang koneksyon sa IPv4 o IPv6.curl -4 URL
Ini-map ang host at port sa isang address, lumalaktaw sa DNS.curl --resolve api.test:443:127.0.0.1 https://api.test
Nag-tatali ng transfer sa isang network interface o address.curl --interface eth0 URL
Naghahatid ng maramihang URL nang sabay-sabay.curl -Z URL1 URL2
Ginagamit ang HTTP/2 o HTTP/3 para sa transfer.curl --http3 URL
Sine-stream ang body habang dumarating sa halip na i-buffer.curl -N URL
Nagbabasa ng karagdagang mga flag mula sa config file.curl -K flags.cfg URL
Pag-debug
Nagpi-print ng buong request at response exchange.curl -v URL
Hex-dump ng lahat ng ipinadala at natanggap.curl --trace - URL