Mikä on cURL-komentorivin syntaksi POST-pyynnön tekemiseen?

Miten voin tehdä POST-pyynnön cURL-komentorivityökalulla?

Kenttien kanssa:

curl --data "param1=value1&param2=value2" https://example.com/resource.cgi

Yksilöllisesti määritetyillä kentillä:

curl --data "param1=value1" --data "param2=value2" https://example.com/resource.cgi

Multipart:

curl --form "fileupload=@my-file.txt" https://example.com/resource.cgi

Moniosio, jossa on kenttiä ja tiedostonimi:

curl --form "fileupload=@my-file.txt;filename=desired-filename.txt" --form param1=value1 --form param2=value2 https://example.com/resource.cgi

Ilman tietoja:

curl --data '' https://example.com/resource.cgi

curl -X POST https://example.com/resource.cgi

curl --request POST https://example.com/resource.cgi

Lisätietoja on cURL-käsikirjassa. cURL-opas verkkoselaimen emuloinnista on hyödyllinen.

Käytä libcurl:n kanssa curl_formadd()-funktiota rakentaaksesi lomakkeen ennen sen lähettämistä tavalliseen tapaan. Katso lisätietoja libcurl-dokumentaatiosta.

Jos kyseessä ovat suuret tiedostot, harkitse parametrien lisäämistä, jotta latauksen edistyminen näkyy:

curl --tr-encoding -X POST -v -# -o output -T filename.dat \
  http://example.com/resource.cgi

-o-tulostus vaaditaan, muuten etenemispalkkia ei näytetä.

Kommentit (6)
curl -d "name=Rafael%20Sagula&phone=3320780" http://www.where.com/guest.cgi 

on esimerkki, joka löytyy Curl Example Manual -julkaisusta.

Käytä kuitenkin %26-merkkejä, jos edellä mainittu ei toimi:

curl -d "name=Rafael%20Sagula%26phone=3320780" http://www.where.com/guest.cgi 
Kommentit (0)
curl -v --data-ascii var=value http://example.com

ja vaihtoehtoja on paljon enemmän, katso lisätietoja curl --help.

Kommentit (0)