⊗ppSpAiAu 50 of 83 menu

Token-perusteinen tunnistautuminen API:ssa PHP:llä

API:n voi tehdä niin, että se ei ole julkinen, vaan suljettu, saatavilla vain salasanalla. Tässä tapauksessa API:imme kutsussa jokaisen pyynnön mukana on lähetettävä oikea salasana parametrien lisäksi. Tällaista salasanaa kutsutaan tokeniksi.

API:n käyttäjien on hankittava tämä token jollain tavalla. Esimerkiksi ostamalla sen. Tässä tapauksessa jokaisella ostajalla on oma tokeninsa.

Katsotaan tokenien käyttöä esimerkin avulla. Oletetaan, että API:mme ottaa parametrina numeron ja palauttaa sen neliön. Tehdään tästä API:sta suljettu. Aloitetaan toteutus.

Aluksi yksinkertaisuuden vuoksi teemme yhden jaon tokenin ja tallennamme sen avoimeen muotoon tiedostoon:

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

Näin käsittelemme API:amme, lähettäen parametrin ja tokenin:

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

Toteutetaan API tokenin tarkistuksella:

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

Tee API, joka parametrina ottaa syntymäpäivän ja palauttaa kuinka monta päivää on jäljellä kyseiseen päivämäärään. Tee token-perusteinen tunnistautuminen.

Muokkaa edellistä tehtävää niin, että sekä parametri että token lähetetään POST-metodilla.

Muokkaa edellistä tehtävää niin, että token lähetetään HTTP -otsikon X-Token kautta.

Tee niin, että tokenit tallennetaan tietokantaan ja jokaisella API-käyttäjällä on oma tokeninsa.

Rajoita jokaiselle API-käyttäjälle päivittäisten pyyntöjen määrä 10:een päivässä.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää