becsavar

Hogyan használjuk a cURL fájl fájlból való közzétételét

Hogyan használjuk a cURL fájl fájlból való közzétételét

A cURL egy ingyenes és nyílt forráskódú parancssori segédprogram, amelyet adatok távoli gazdagépre vagy onnan történő továbbítására használnak, minimális felhasználói beavatkozással. A cURL olyan elsődleges protokollokkal működik, mint a HTTP, FTP, SCP és SFTP.

Lehetővé teszi a felhasználók számára az adatok feltöltését és letöltését akár egyetlen parancs, akár bash szkript segítségével. Olyan szolgáltatásokat is nyújt, mint a felhasználói hitelesítés, a proxy alagútépítés, a letöltés folytatása, űrlap alapú feltöltések, SSL tanúsítványok és még sok más. Nyugodtan mondhatjuk, hogy a cURL több, mint egy HTTP kliens.

Ez az oktatóanyag végigvezeti Önt egy olyan CURL-funkción, amely lehetővé teszi a felhasználók számára, hogy fájladatok felhasználásával HTTP feladási kéréseket hajtsanak végre.

Mielőtt belekezdenénk, hadd említsem meg, hogy ez nem a kezdő útmutató a curl-hez; bizonyos fokú előzetes know-how-ra van szüksége, különös tekintettel a hálózati protokollokra, a HTTP-kérelmekre és egyebekre.

Mielőtt belemerülhetnénk a CURL használatába a POST kérések teljesítéséhez, először állítsuk be a beállítást.

A cURL telepítése

A legtöbb esetben alapértelmezés szerint a fő Linux disztribúciókban telepítve van a cURL. Használja a parancsot a cURL használatának megerősítéséhez

göndör - segítség

Ha hibát kap:

-bash: curl: parancs nem található

A folytatás előtt telepítenie kell.

Használja az alapértelmezett csomagkezelőt a telepítés befejezéséhez, az alábbi parancsok szerint:

sudo apt-get frissítés
sudo apt-get install curl -y

Mielőtt megvitatnánk, hogyan kell POST-ot adni egy fájlból a cURL segítségével, engedje meg, hogy röviden beszéljek a POST-kérelemről. Szokás szerint, ha már ismeri ezt, nyugodtan ugorhat előre; különben ragaszkodjon.

cURL POST kérés

A HTTP feladási kérelem az egyik legnépszerűbb HTTP / HTTPS kérési módszer, amelyet az adatok távoli gazdagépre történő küldéséhez használnak erőforrás létrehozásához vagy frissítéséhez.

Most:

Kérjük, ne keverje össze a módszert a PUT-val; bár meglehetősen hasonlóak, vannak különbségeik.

A POST kérés segítségével elküldött adatokat főleg a HTTP kérés kérelem törzsében tárolják.

Vegyük például figyelembe az alábbi POST kérelmet, amely felhasználónév és jelszó, valamint értékeiket küldi.

POST / korlátozott / bejelentkezés.php HTTP / 1.1 Host: linuxhint.com Tartalomtípus: application / x-www-form-urlencoded felhasználónév = linuxhint & password = jelszó

A fenti POST kérés elküldéséhez a cURL segítségével megadhatjuk a parancsokat:

curl -x POST -d “felhasználónév = linuxhint és jelszó = jelszó” https: // linuxhint.com / korlátozott / bejelentkezés.php

A fenti parancsban a -d opcióval mondtuk a cURL-nak, hogy tartalmazza az alapértelmezett fejléceket, amely a Content-Type: application / x-www-form-urlencoded

Az -X paraméter megadja a HTTP kérési módszert, ebben az esetben a HTTP POST kérést.

cURL Adja meg a Tartalom-típust

Bizonyos esetekben érdemes a kérelem elküldése során [kifejezetten] megadni a Tartalom-típust. A fejlécben lévő Content-Type entitás meghatározza az küldött erőforrás adathordozójának típusát. Az adathordozó-típus MIME-típusként is ismert.

Ha meg szeretné tudni a MIME-típusokat, vegye figyelembe az alábbiakat:

https: // linkfy.to / IANA-MIME-típusok

A Content-Type megadásához egy cURL kérésben használhatjuk a -H jelzőt. Küldjön például MIME-alkalmazástípust / JSON.

curl -X POST -d “felhasználónév”: “linuxhint”, “jelszó”: “jelszó” -H “Content-Type: alkalmazás / json” https: // linuxhint.com / korlátozott / bejelentkezés.php

A fentiek meghatározzák, hogy JSON objektumot akarunk küldeni a megadott URL-re. Ezzel elolvashatja az értékeket egy JSON fájlból, vagy elküldheti nyersen.

Hogyan olvassuk el az adatokat egy fájlból

Tegyük fel, hogy a parancssorban szeretne kéréseket küldeni a cURL használatával, de az elküldendő adatok fájlban vannak. A Content-Type segítségével megadhatja a média típusát, majd átadhatja az adatokat tartalmazó fájl elérési útját. Ebben a példában egy JSON objektumot illusztrálok.

A JSON fájl (adatok.json) a következő értékeket tartalmazza:


"felhasználónév": "linuxhint",
"jelszó": "jelszó"

Ezeknek az adatoknak a JSON fájlból történő elküldéséhez használhatjuk a -d parancsot, majd átadhatjuk a fájlnevet az alábbi parancs szerint:

curl -X POST -H “Tartalom-típus: alkalmazás / json” -d “@adatok.json ”https: // linuxhint.com / korlátozott / bejelentkezés.php

Használhatja a -data-bináris opciót is.

curl -X POST -H „Tartalom-típus: alkalmazás / json” --data-bináris „@ / home / user / data.json ”https: // linuxhint.com / korlátozott / bejelentkezés.php

Az adatok elküldéséhez szöveges fájlt is használhat; csak annyit kell megadnia, hogy a Content-Type as text / plain.

Például egy szöveges fájl (adatok.txt) a következő értékeket tartalmazza

felhasználónév = linuxhint és jelszó = jelszó

A cURL paranccsal egyszerűen küldje el a kérést:

curl -X POST -H „Tartalom-típus: szöveg / sima” -d „adatok.txt ”https: // linuxhint.com / korlátozott / bejelentkezés.php

Használhat más használható fájltípusokat is, például XML, HTML és még sok mást.

Következtetés

Ebben az oktatóanyagban megvitattuk, hogyan lehet POST kéréseket készíteni és adatokat továbbítani különböző formátumokban. Jó szem előtt tartani, hogy a CURL nagyon hatékony, de nagyon rugalmas is. Az opciók gyűjteményét egyetlen parancsban egyesítheti, és hatékony kéréseket hozhat létre. További információkért ajánlom a cURL dokumentációt, mivel jól meg van írva.

https: // göndör.se / docs /

Köszönjük, hogy elolvastad, és érezd jól magad a cURL segítségével.

Az AutoKey használata a Linux játékok automatizálásához
Az AutoKey egy asztali automatizáló segédprogram Linux és X11 rendszerekhez, Python 3, GTK és Qt programozással. A parancsfájlok és a MACRO funkcióina...
Az FPS-számláló megjelenítése a Linux-játékokban
A Linux játék komoly lendületet kapott, amikor a Valve 2012-ben bejelentette a Linux támogatását a Steam kliensnek és játékaiknak. Azóta sok AAA és in...
Sid Meier Civilization VI letöltése és lejátszása Linuxon
Bevezetés a játékba A Civilization 6 egy modern felvétel a Age of Empires játékok sorozatában bevezetett klasszikus koncepcióra. Az ötlet meglehetősen...