⊗ppSpAiAu 50 of 83 menu

API s autorizací v PHP

Lze nastavit, aby API nebylo veřejné, ale privátní, přístupné pouze s heslem. V tomto případě bude při přístupu k našemu API nutné v každém požadavku kromě parametrů předat správné heslo. Takovému heslu se říká token.

Uživatelé našeho API musí získat tento token nějakým způsobem. Například jej koupit. V tomto případě bude každý, kdo si koupí, mít svůj vlastní token.

Podívejme se na práci s tokeny na příkladu. Předpokládejme, že naše API bude přijímat číslo jako parametr a vracet druhou mocninu tohoto čísla. Udělejme toto API privátním. Pojďme k implementaci.

Pro začátek pro jednoduchost vytvoříme jeden společný token a budeme jej ukládat v otevřené podobě v souboru:

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

Takhle budeme přistupovat k našemu API, předávajíce parametr a token:

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

Implementujme API s kontrolou tokenu:

<?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'; } ?>

Vytvořte API, které parametrem bude přijímat datum narození a vracet kolik dní zbývá do tohoto data. Implementujte autorizaci pomocí tokenu.

Upravte předchozí úlohu tak, aby se jak parametr, tak token předávaly metodou POST.

Upravte předchozí úlohu tak, aby se token předával prostřednictvím HTTP hlavičky X-Token.

Zařiďte, aby se tokeny ukládaly v databázi a každý uživatel API měl svůj vlastní token.

Omezte každému uživateli API počet požadavků na 10 za den.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout