A curl parancssori eszköz tökéletes asszisztens, ha HTTP-kóddal dolgozik. Tesztelje a kéréseket, fedezze fel az adatformátumokat és így tovább!

A Hypertext Transfer Protocol (HTTP) az interneten keresztüli kommunikáció gerince, amely lehetővé teszi az adatok átvitelét a szerverek és a kliensek között. A HTTP-végpontokkal való interakció azonban kihívást jelenthet, különösen a kezdők számára.

Szerencsére a curl, egy parancssori eszköz egyszerű és hatékony módot biztosít HTTP-kérések küldésére és fogadására. Itt megtudhatja, hogyan használhatja a curl-t az alapvető POST, GET, DELETE és PUT HTTP kérések létrehozásához.

A göndör telepítése

Alapértelmezés szerint a curl a fő operációs rendszerekre telepítve van, beleértve a macOS-t, a Linuxot és a Unixot.

A curl telepítését az alábbi parancs futtatásával ellenőrizheti:

becsavar

A fenti parancsnak ki kell írnia a „try 'curl --help' vagy 'curl --manual' további információért” szöveget a termináljára.

Ha a curl nincs telepítve az operációs rendszerére, letöltheti és telepítheti a webhelyről a curl letöltési oldalon.

instagram viewer

HTTP GET-kérés készítése

A HTTP GET kérés egy módszer az adatok lekérésére egy webszerver. Ezeket a kéréseket egy adott erőforrás, például weboldal, kép vagy videó lekérésére használhatja.

GET kérelmet nyújthat be curl-el az alábbi formátumban:

curl -X GET 

Cserélje ki a lekérni kívánt erőforrás URL-jével.

Például:

curl -X GET https://example.com/todos/1

A fenti parancs futtatása HTTP GET kérést küld az URL-hez https://example.com/todos/1. A -X GET Az opció megadja, hogy a HTTP metódus a GET. Amikor a parancs fut, a curl GET kérést küld az URL-ben megadott kiszolgálónak, és várja a kiszolgáló válaszát.

Ha a szerver ezzel válaszol sikeres állapotkód, becsavar megjeleníti a válasz törzsét a terminálban, amely ebben az esetben egy 1-es azonosítójú teendő JSON-adatai lennének.

Alternatív megoldásként megadhat GET-kérést anélkül, hogy megadná a -X jelölje be, mert alapértelmezés szerint a curl GET kérést küld, ha nem ad meg kérési metódust a -X zászló.

Például:

becsavar https://example.com/todos/1

A fenti parancs futtatása ugyanazt a választ adja vissza, mint az előző parancs a "-X GET” zászlót.

HTTP POST kérés készítése

A HTTP POST kérés egy módszer az adatok webszerverre való mentésére. Ellentétben a GET-kéréssel, amely az URL részeként küld adatokat, a POST-kérés a kérés üzenettörzsében küld adatokat. Ez biztonságosabbá teszi a POST kéréseket az érzékeny információk továbbításához.

Az alábbi formátumban küldhet POST kérést curl-el:

göndör -X POST -d 

Például:

curl -X POST -d 'name=jack' -d '[email protected]' \
 https://example.com/users

A fenti parancs POST kérést küld a címre https://example.com/users által meghatározott adatokkal -d zászlót rakományként.

A -d zászló határozza meg az elküldendő adatokat. Ebben az esetben két adatparamétert adott meg: név=bukó és [email protected].

Amikor használja a -d jelölje meg többször egy parancsban, a mezőket a & szimbólum használatával egyesítheti.

Például:

curl -d "name=jack&[email protected]" https://example.com/api/users

Előfordulhat, hogy egyes adatokat, amelyeket megpróbál elküldeni egy POST-kérésben, nehéz a terminál egyetlen karakterláncába illeszteni. Ilyen esetekben ideális lehet egy fájlból a curl használatával beolvasni és POST-olni az adatokat.

Ha adatokat szeretne küldeni egy fájlból egy POST-kérésben curl-el ellátott rakományként, használja a @ után azonnal aláírja -d jelölőnégyzetet, majd annak a fájlnak az elérési útját, amelyet a curl-el küldeni szeretne a kérelemben.

Például:

curl -X POST -d @users.txt https://example.com/api/users

A tartalomtípus megadása

Használni a -d jelző automatikusan beállítja a Content-Type fejlécet application/x-www-form-urlencoded. Mindazonáltal manuálisan megadhatja a kéréséhez megfelelő tartalomtípust a segítségével -H vagy --fejléc zászlót, majd a kívánt tartalomtípust.

Például:

curl -H "Tartalom típusa: alkalmazás/json" \
 -d '{"név": "Jack", "e-mail": "[email protected]"}' \
 https://example.com/api/users

A fenti parancsban a -H flag a Content-Type fejlécet a következőképpen adja meg Tartalom típusa: Application/json.

Cserélheted alkalmazás/json bármely más érvényes MIME-típussal vagy tartalomtípussal, amely megfelel az Ön által a kérés törzsében küldött adatoknak. Például bináris adatok, például kép vagy hangfájl feltöltésekor a Content-Type értéket állítsa többrészes/forma-adatok.

Ez lehetővé teszi az elküldött adatok várható formátumának megadását, ami fontos lehet olyan API-kkal vagy webszolgáltatásokkal való interakció során, amelyek megfelelő feldolgozáshoz meghatározott tartalomtípusokat igényelnek.

HTTP PUT-kérés készítése

A HTTP PUT-kérés egy meglévő erőforrás frissítésére szolgáló módszer a webszerveren, vagy létrehozhat egyet, ha az erőforrás nem létezik. Ez a módszer abban különbözik a POST módszertől, hogy idempotens. Ez azt jelenti, hogy a PUT metódus egyszeri vagy többszöri egymás utáni meghívása ugyanolyan hatással van a szerverre.

Az alábbi formátumban küldhet PUT kérést curl-el:

curl -X PUT -H "Tartalomtípus: Application/json" \
 -d '{"név": "Jack Bauer", "e-mail": "[email protected]"}' \
 https://example.com/api/users/4

A fenti parancs egy PUT kérést küld JSON formátumban a fenti URL-ben megadott webszervernek, és frissíti a megadott erőforrást. Ha a megadott erőforrás nem létezik, akkor létrehozza az erőforrást a webszerveren.

HTTP TÖRLÉS kérése

A HTTP DELETE kérés egy adott erőforrás webszerverről való törlésének módszere. A PUT kérésekhez hasonlóan a DELETE kérések is idempotensek. Ugyanazon DELETE kérés többszöri elküldése ugyanahhoz az erőforráshoz ugyanazt az eredményt fogja eredményezni a kiszolgálón.

A curl segítségével TÖRLÉS kérelmet küldhet az alábbi parancs futtatásával:

curl -X TÖRLÉS http://example.com/api/users/3

A fenti parancs DELETE kérést küld a fenti URL-ben megadott webszervernek, és törli a megadott erőforrást.

A törlési kérelmek véglegesen eltávolítják a megadott erőforrást a szerverről. Így a DELETE-t támogató webszervernek általában szüksége van egy formára hitelesítés vagy engedélyezés mielőtt ezt a kérést benyújthatná.

A következőképpen küldhet TÖRLÉS kérelmet engedélyezési fejléccel:

curl -X TÖRLÉS -H "Engedélyezés: Bearer my_access_token" \
 https://example.com/api/users/3

A fenti parancs megadja a hitelesítési információkat a kérelem fejlécében a Bearer hitelesítési módszerrel a -H zászló. Engedélyezés: Bearer my_access_token a fejléc értéke. my_access_token a tényleges hozzáférési jogkivonat értékének helyőrzője.

Más módok HTTP-kérésekre

A curl mellett a kérés kontextusától függően többféle módon is lehet HTTP-kéréseket küldeni. A leggyakoribb módszerek közé tartozik a webböngésző, például a Chrome, a grafikus felhasználói felület (például a Postman) vagy az API-kliens használata.

Mindegyik opciónak megvannak a maga előnyei és kompromisszumai. Végső soron az eszköz kiválasztása a feladat követelményeitől függ.