⊗ppSpAiRs 52 of 83 menu

PHP-дегі REST API

API-ді әзірлеушілер үшін де, оны пайдаланушылар үшін де жалпы ыңғайлылық үшін стандарттаған арнайы тәсілдер бар.

Мұндай тәсілдердің бірі - REST API. Оның негізінде CRUD операциялары үшін HTTP протоколының әртүрлі әдістерін пайдалану қажет деген идея жатыр.

Деректерді алу үшін - GET әдісі, деректерді жасау үшін - POST әдісі, деректерді өзгерту үшін - PUT әдісі, деректерді жою үшін - DELETE әдісі.

Мысал ретінде пайдаланушылармен жұмыс істейтін бір API-ді қарастырайық. Әртүрлі әрекеттер үшін URL-дер қалай көрінетінін көрейік.

Барлық пайдаланушыларды аламыз:

GET http://api.loc/users/

Пайдаланушыны оның id бойынша аламыз:

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

Пайдаланушыны жасаймыз:

POST http://api.loc/user/

Пайдаланушыны оның id бойынша өзгертеміз:

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

Пайдаланушыны оның id бойынша жоямыз:

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

Енді REST API PHP-де қалай іске асатынын қарастырайық. Мұнда бір проблема бар. Мәселе мынада, PHP де, CURL де тек GET және POST әдістерін ғана қолдайды:

<?php $method = $_SERVER['REQUEST_METHOD']; var_dump($method); // тек GET және POST ?>

Сондықтан REST API-ді іске асыру үшін айлакерлікке жүгінуге тура келеді. Оның мәні мынада, шын мәнінде деректер тек GET және POST әдістері арқылы тасымалданады, бірақ біз басқа әдістердің жұмысын арнайы HTTP тақырыпшасы арқылы имитациялаймыз. Оны, мысалы, HTTP-X-HTTP-METHOD деп атайық.

Сонда біз осы тақырыпшаның мазмұн келесі түрде ала аламыз:

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

Енді біз API-ді іске асыруды жаза аламыз:

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

Интернет-дүкеннің тауарлары үшін REST API-ді іске асырыңыз.

Іске асырылған API-дің жұмысын CURL кітапханасының көмегімен тексеріңіз.

Қазақ
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართული한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау