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égHa 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éssudo 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.phpA 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.phpA 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.phpHaszná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.phpAz 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.phpHaszná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.