„GCAuth” változatai közötti eltérés
(→A megvalósítás) |
(→A megvalósítás) |
||
18. sor: | 18. sor: | ||
(Az url és scope paraméterek természetesen urlencoded formában legyenek.)<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 | Pl. http://geocaching.hu/token.geo?next=http%3A%2F%2Forokseg.net%2Falappont%2Findex.php&scope=username | ||
− | <br/> | + | <br/><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/> | '''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} | {url}?id={user_id}&token={token} | ||
24. sor: | 24. sor: | ||
* token: véletlenszerűen generált karaktersorozat hexadecimális formátumban; <br/> | * token: véletlenszerűen generált karaktersorozat hexadecimális formátumban; <br/> | ||
Pl. http://orokseg.net/alappont/index.php?id=17615&token=06aa8ca3b88b8fd00c1be319938275cf | Pl. http://orokseg.net/alappont/index.php?id=17615&token=06aa8ca3b88b8fd00c1be319938275cf | ||
− | <br/> | + | <br/><br/> |
'''3.''' A külső szerver meghívja a gc szervert (pl. PHP-ban file_get_contents() függvénnyel):<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} | http://geocaching.hu/token.geo?site={host}&action={secrets}&id={user_id}&token={token} | ||
32. sor: | 32. sor: | ||
* token: az előző (2.) válasz "token" 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 | Pl. http://geocaching.hu/token.geo?site=orokseg.net&action=username&id=17615&token=06aa8ca3b88b8fd00c1be319938275cf | ||
− | <br/> | + | <br/><br/> |
'''4.''' A gc szerver válasza (a kért adat vagy hibaüzenet).<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. | * 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/> | * Kudarc esetén magyar nyelvű hibaüzenet érkezik.<br/> | ||
Karakter kódolás mindkét esetben ISO-8859-2. | Karakter kódolás mindkét esetben ISO-8859-2. | ||
+ | <br/><br/> | ||
== Hol használható? == | == 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. | A példákban megjelenő [http://orokseg.net/alappont/ orokseg.net] honlapon már 2011. február óta "élesben" működik. |
A lap 2011. július 16., 02:36-kori változata
Tartalomjegyzék |
Mi a GCAuth?
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:
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")
(Az url és scope paraméterek természetesen urlencoded formában legyenek.)
Pl. http://geocaching.hu/token.geo?next=http%3A%2F%2Forokseg.net%2Falappont%2Findex.php&scope=username
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:
{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;
Pl. http://orokseg.net/alappont/index.php?id=17615&token=06aa8ca3b88b8fd00c1be319938275cf
3. A külső szerver meghívja a gc szervert (pl. PHP-ban file_get_contents() függvénnyel):
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
4. A gc szerver válasza (a kért adat vagy hibaüzenet).
- 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.
Karakter kódolás mindkét esetben ISO-8859-2.
Hol használható?
A példákban megjelenő orokseg.net honlapon már 2011. február óta "élesben" működik.