⊗ppSpAiAu 50 of 83 menu

API с авторизация в PHP

Може да се направи така, че API да бъде не публично, а частно, достъпно само с парола. В този случай при достъп до нашето API във всяка заявка, освен параметрите, ще трябва да се предаде и правилната парола. Такава парола се нарича токен.

Потребителите на нашето API ще трябва да получат този токен по някакъв начин. Например, да го купят. В този случай всеки, който го купи, ще има свой собствен токен.

Нека разгледаме работата с токени с пример. Нека нашето API да приема число като параметър, и да връща квадрата на това число. Нека направим това API частно. Да започнем с реализацията.

За начало, за простота, ще направим един общ токен и ще го съхраняваме в отворен вид във файл:

<?php $token = '12345'; ?>

Ето как ще се обръщаме към нашето API, предавайки параметъра и токена:

http://api.loc/index.php?num=100&token=12345

Нека реализираме API с проверка на токена:

<?php $token = '12345'; if (isset($_GET['token']) and $_GET['token'] === $token) { if (isset($_GET['num'])) { echo $_GET['num'] ** 2; } else { echo 'error'; } } else { echo 'incorrect token'; } ?>

Направете API, което като параметър ще приема дата на рожден ден и ще връща колко дни остават до тази дата. Направете авторизация чрез токен.

Модифицирайте предната задача така, че и параметърът, и токенът да се предават чрез метода POST.

Модифицирайте предната задача така, че токенът да се предава чрез HTTP заглавка X-Token.

Направете така, че токените да се съхраняват в база данни и всеки потребител на API да има свой собствен токен.

Ограничете за всеки потребител на API броя заявки до 10 на ден.

Български
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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне