|
|
(2 szerkesztő 13 közbeeső változata nincs mutatva) |
1. sor: |
1. sor: |
− | == Mi a GCAuth? ==
| + | Az oldal 2013. november 18-tól a [http://fairy.hu/blog/?page_id=119 GCBLOG]on olvasható. |
− | | + | |
− | Lényegében egy kényelmi szolgáltatás: a geocaching.hu felhasználói külső honlapon is azonosíthatják magukat a nickjükkel - akár két kattintással.
| + | |
− | | + | |
− | == Miért jó? ==
| + | |
− | | + | |
− | * Nem kell kiadni a jelszót egy külső lapnak.
| + | |
− | * Nem kell újra végigcsinálni a regisztrációs procedúrát.
| + | |
− | * A meglevő (ismert) nicket a gazdája (és csak ő) használhatja - más nem nyúlhatja le azt előle.
| + | |
− | | + | |
− | | + | |
− | == A megvalósítás ==
| + | |
− | | + | |
− | '''1.''' A külső honlapról a GCAuth oldalra irányítjuk a felhasználót:<br/>
| + | |
− | http://geocaching.hu/token.geo?next={url}&scope={secrets}
| + | |
− | * next: az url, ahová hitelesítés után visszatér a böngésző;
| + | |
− | * scope: az adatok, amelyeket a gc szervertől szertnénk megtudni, szóközzel elválsztva (pl. "username")<br/>
| + | |
− | (Az url és scope paraméterek természetesen urlencoded formában legyenek.)<br/>
| + | |
− | Pl. http://geocaching.hu/token.geo?next=http%3A%2F%2Forokseg.net%2Falappont%2Findex.php&scope=username
| + | |
− | <br/>
| + | |
− | '''2.''' A gc szerver válaszában a megjelölt URL-re irányítja a böngészőt, két új paraméterrel:<br/>
| + | |
− | {url}?id={user_id}&token={token}
| + | |
− | * id: a geocaching.hu-s numerikus felhasználói azonosító;
| + | |
− | * token: véletlenszerűen generált karaktersorozat hexadecimális formátumban; <br/>
| + | |
− | Pl. http://orokseg.net/alappont/index.php?id=17615&token=06aa8ca3b88b8fd00c1be319938275cf
| + | |
− | <br/>
| + | |
− | '''3.''' A külső szerver meghívja a gc szervert (pl. PHP-ban file_get_contents() függvénnyel):<br/>
| + | |
− | http://geocaching.hu/token.geo?site={host}&action={secrets}&id={user_id}&token={token}
| + | |
− | * site: az előző (1.) kérés "next" paraméterének host része;
| + | |
− | * action: az előző (1.) kérés "scope" paramétere;
| + | |
− | * id: az előző (2.) válasz "id" paramétere;
| + | |
− | * token: az előző (2.) válasz "token" paramétere;
| + | |
− | Pl. http://geocaching.hu/token.geo?site=orokseg.net&action=username&id=17615&token=06aa8ca3b88b8fd00c1be319938275cf
| + | |
− | <br/>
| + | |
− | '''4.''' A gc szerver válasza (a kért adat vagy hibaüzenet).<br/>
| + | |
− | * Siker esetén a kapott válaszból PHP unserialize() függvénnyel egy tömböt kapunk.
| + | |
− | * Kudarc esetén magyar nyelvű hibaüzenet érkezik.<br/>
| + | |
− | Karakter kódolás mindkét esetben ISO-8859-2.
| + | |
− | | + | |
− | == Hol használható? ==
| + | |
− | | + | |
− | A példákban megjelenő [http://orokseg.net/alappont/ orokseg.net] honlapon már 2011. február óta "élesben" működik.
| + | |