⊗ppSpAiRs 52 of 83 menu

REST API PHP-ban

Léteznek speciális megközelítések, amelyek szabványosítják az API-t a fejlesztők és az API felhasználói általános kényelme érdekében.

Az egyik ilyen megközelítés a REST API. Alapötlete az, hogy a CRUD műveletekhez különböző HTTP protokoll módszereket kell használni.

Adatok lekéréséhez - GET módszer, adatok létrehozásához - POST módszer, adatok módosításához - PUT módszer, adatok törléséhez - DELETE módszer.

Példaként vegyünk egy API-t, amely felhasználókkal manipulál. Nézzük meg, hogyan fognak kinézni a URL-ek a különböző műveletekhez.

Összes felhasználó lekérése:

GET http://api.loc/users/

Egy felhasználó lekérése a id alapján:

GET http://api.loc/user/1/

Felhasználó létrehozása:

POST http://api.loc/user/

Felhasználó módosítása a id alapján:

PUT http://api.loc/user/1/

Felhasználó törlése a id alapján:

DELETE http://api.loc/user/1/

Nézzük meg, hogyan valósul meg a REST API PHP-ban. Itt van egy bizonyos probléma. Az a helyzet, hogy mind a PHP, mind a CURL csak a GET és POST módszereket támogatja:

<?php $method = $_SERVER['REQUEST_METHOD']; var_dump($method); // csak GET és POST ?>

Ezért a REST API megvalósításához trükköznünk kell. A trükk lényege az, hogy a valóságban az adatokat csak GET és POST módszerekkel továbbítjuk, de más módszerek működését fogjuk utánozni egy egyéni HTTP fejléc segítségével. Nevezzük el például HTTP-X-HTTP-METHOD-nak.

Így a fejléc tartalmát a következőképpen tudjuk megkapni:

<?php $method = $_SERVER['HTTP-X-HTTP-METHOD']; ?>

Most már megírhatjuk az API megvalósítását:

<?php $method = $_SERVER['HTTP-X-HTTP-METHOD']; switch ($method) { case 'GET': // ... break; case 'POST': // ... break; case 'PUT': // ... break; case 'DELETE': // ... break; } ?>

Valósítsa meg egy internetes bolt termékeinek REST API-ját.

Ellenőrizze a megvalósított API működését a CURL könyvtár segítségével.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás