Paano Gumamit ng cURL Mag-post ng Data mula sa File

How Use Curl Post Data From File



Ang cURL ay isang libre at open-source na utos ng command-line na ginagamit para sa paglilipat ng data sa o mula sa isang remote host na may kaunting pakikipag-ugnay ng gumagamit. Gumagana ang cURL sa pangunahing mga protokol tulad ng HTTP, FTP, SCP, at SFTP.

Pinapayagan nito ang mga gumagamit na mag-upload at mag-download ng data alinman sa paggamit ng solong mga command o bash script. Nagbibigay din ito ng mga tampok tulad ng pagpapatotoo ng gumagamit, tunneling ng proxy, resume ng pag-download, mga pag-upload na batay sa form, mga sertipiko ng SSL, at marami pang iba. Ito ay ligtas na sabihin na ang cURL ay higit pa sa isang HTTP client.







Dadalhin ka ng tutorial na ito sa isang pagpapaandar ng cURL na nagbibigay-daan sa mga gumagamit na magsagawa ng mga kahilingan sa pag-post ng HTTP gamit ang data ng file.



Bago kami magsimula, hayaan mo akong banggitin na hindi ito isang gabay ng nagsisimula sa cURL; kailangan mo ng isang antas ng paunang kaalaman, lalo na ang kaalaman sa mga network protocol, mga kahilingan sa HTTP, at marami pa.



Bago tayo makisawsaw gamit ang cURL upang maisakatuparan ang mga kahilingan sa POST, kumuha muna tayo ng pag-set up.





Paano Mag-install ng cURL

Sa karamihan ng mga kaso, mahahanap mo ang naka-install na cURL sa mga pangunahing pamamahagi ng Linux bilang default. Upang kumpirmahing mayroon kang cURL, gamitin ang utos

curl –-help

Kung nakakuha ka ng isang error:



-bash: curl:utoshindi mahanap

Kakailanganin mong i-install ito bago magpatuloy.

Gamitin ang default na manager ng package upang makumpleto ang pag-install tulad ng ipinakita sa mga utos sa ibaba:

sudo apt-get update

sudo apt-get installkulot-at

Bago talakayin kung paano mag-POST ng data mula sa isang file na may cURL, payagan akong pag-usapan ang hiling sa POST nang maikling. Tulad ng dati, kung pamilyar ka na rito, maaari kang huwag mag-atubiling lumaktaw nang maaga; kung hindi man, dumikit.

cURL POST Request

Ang kahilingan sa pag-post ng HTTP ay isa sa pinakatanyag na pamamaraan ng paghiling ng HTTP / HTTPS na ginamit upang magpadala ng data sa isang remote host upang lumikha o mag-update ng isang mapagkukunan.

Ngayon :

Mangyaring huwag lituhin ang pamamaraan sa PUT; bagaman medyo magkatulad sila, mayroon silang mga pagkakaiba.

Ang data na ipinadala gamit ang isang kahilingan sa POST ay pangunahing naiimbak sa katawan ng kahilingan ng kahilingan sa HTTP.

Halimbawa, isaalang-alang ang kahilingan sa POST sa ibaba na nagpapadala ng username at password pati na rin ang kanilang mga halaga.

POST/pinaghihigpitan/login.php HTTP/1.1Host: linuxhint.com Uri ng Nilalaman: application/x-www-form-urlencodedusername= linuxhint&password= password

Upang maipadala ang kahilingan sa POST sa itaas gamit ang cURL, maaari naming tukuyin ang mga utos bilang:

kulot-xPOST-d username= linuxhint&password= password https://linuxhint.com/pinaghihigpitan/pag-login.php

Sa utos sa itaas, ginamit namin ang pagpipilian na -d upang sabihin sa cURL na isama ang mga default na header, na Uri ng Nilalaman: application / x-www-form-urlencoded

Tinutukoy ng pagpipiliang -X ang pamamaraang paghiling ng HTTP upang magamit, sa kasong ito, kahilingan sa HTTP POST.

cURL Tukuyin ang Uri ng Nilalaman

Sa ilang mga kaso, maaari naming tukuyin [malinaw] ang Uri ng Nilalaman kapag ipinapadala ang kahilingan. Ang nilalamang Uri ng Nilalaman sa header ay tumutukoy sa uri ng media ng mapagkukunang ipinapadala namin. Ang uri ng media ay karaniwang kilala rin bilang MIME Type.

Kung nais mong malaman ang tungkol sa Mga Uri ng MIME, isaalang-alang ang mapagkukunang ibinigay sa ibaba:

https://linkfy.to/IANA-MIME-Mga Uri

Upang tukuyin ang Uri ng Nilalaman sa isang kahilingan sa cURL, maaari naming gamitin ang H flag. Halimbawa, ipadala sa amin ang MIME Uri ng application / JSON.

kulot-XPOST-d {username: linuxhint, password: password} -HUri ng Nilalaman: application/json https://linuxhint.com/pinaghihigpitan/pag-login.php

Tinutukoy ng nasa itaas na nais naming magpadala ng isang object na JSON sa ibinigay na URL. Maaari mo itong magamit upang basahin ang mga halaga mula sa isang JSON file o ipadala ito bilang hilaw.

Paano Basahin ang Data mula sa isang File

Ipagpalagay na nais mong gumawa ng mga kahilingan sa linya ng utos gamit ang cURL, ngunit mayroon kang data upang ipadala na nakaimbak sa isang file. Maaari mong gamitin ang Uri ng Nilalaman upang tukuyin ang uri ng media at pagkatapos ay ipasa ang path ng file na naglalaman ng data. Para sa halimbawang ito, ilalarawan ko ang paggamit ng isang object na JSON.

Naglalaman ang JSON file (data.json) ng mga sumusunod na halaga:

{
'username':'linuxhint',
'password':'password'
}

Upang maipadala ang data na ito mula sa isang JSON file, maaari naming gamitin ang -d at pagkatapos ay maipasa ang filename tulad ng ipinakita sa utos sa ibaba:

kulot-XPOST-HUri ng Nilalaman: application/json-d @data.json https://linuxhint.com/pinaghihigpitan/pag-login.php

Maaari mo ring gamitin ang pagpipiliang –data-binary.

kulot-XPOST-HUri ng Nilalaman: application/json--data-binary @ /bahay/gumagamit/data.json https://linuxhint.com/pinaghihigpitan/pag-login.php

Maaari mo ring gamitin ang isang text file upang maipadala ang data; ang kailangan mo lamang tukuyin ay ang Uri ng Nilalaman bilang teksto / payak.

Halimbawa, isang file ng teksto (data.txt) na naglalaman ng mga sumusunod na halaga

username= linuxhint&password= password

Gamit ang utos na cURL, ipadala lamang ang kahilingan bilang:

kulot-XPOST-HUri ng Nilalaman: teksto/payak-ddata.txt https://linuxhint.com/pinaghihigpitan/pag-login.php

Maaari mong gamitin ang iba pang mga uri ng file na maaari mong gamitin tulad ng XML, HTML, at marami pa.

Konklusyon

Sa tutorial na ito, tinalakay namin kung paano gumawa ng mga kahilingan sa POST at ipasa ang data sa iba't ibang mga format. Mahusay na tandaan na bukod sa napakalakas, ang cURL ay napaka-nababaluktot din. Maaari nitong pagsamahin ang isang koleksyon ng mga pagpipilian sa isang solong utos upang lumikha ng malakas na mga kahilingan. Para sa karagdagang impormasyon, inirerekumenda ko ang dokumentasyon ng cURL dahil mahusay itong nakasulat.

https://curl.se/docs/

Salamat sa pagbabasa, at magsaya kasama ang cURL.