Api «VKontakte” iframe-fejlesztési pályázat

Tekintsük az egyes lehetőségek külön-külön.

módszer - a módszer a tényleges API «VKontakte», amit akar hívni. Ebben az esetben isAppUser.

sig - aláírás kérelmet. Kötelező minden kérést, kivéve a vizsgálat, ami lesz szó később. Az aláírás egy hash által kiszámított algoritmus MD5, a sort, amely olyan formátumú viewer_idname1 = value1name2 = value2secret.

Itt 5042864 - felhasználói azonosító, amely jelenleg is dolgozik az alkalmazás, vagyis a tiéd ...

Heg54Jhgp4 - az úgynevezett privát kulcs. Ismerje meg, és ha kell változtatni, és az értéke lehet az alkalmazás beállításait tartalmazó oldalt. Itt meg kell jegyezni, hogy ez a kulcs, a neve ellenére nem nem titok, hanem az ellenkezője. Kifejezetten létre annak érdekében, hogy írja alá a kérelmet a kliens, és így potenciálisan elérhető minden felhasználó számára. Nem kell félni. A tény az, hogy bármilyen kérést az API vagy a támadó már kialakult, akkor képes lesz arra, hogy végezzék el azt csak az én nevemben! Itt van, és nyitott minden fájlátvitel előnyök a cookie-kat, ha az API használatával a kliens oldalon.

Kiszámításakor az aláírásokat kell emlékezni fontos jellemzője: a beállítások név = érték összhangban vannak az aláírás kiszámítására alfabetikus sorrendben név szerint növekvő név.

A lekérdezés húrok úgy tűnik, hogy lehet válogatni. Most meg kell találnunk a módját, hogy adja át a szerver „VKontakte”. Az XMLHttpRequest objektum, általánosan használt aszinkron adatátvitel, van egy kemény határ: nem támogatja a határon forrás lekérdezéseket. Korábban beszéltünk jsonp - most lássuk, ez a fellépés! Ha azt szeretnénk, hogy küldje el vizsgálatot vonal a szerver „VKontakte”, az szükséges, hogy a HTML-kódot az oldalon az alkalmazás meg van ilyen kód:

De mint tudjuk, a „VKontakte” szerver válaszul eljárás hívja az API visszaad egy választ JSON vagy XML formátumú paramétertől függ formátumban. Ebben a példában a válasz jön JSON formátumban, és ez a következő:

Mi történik, ha az alap HTML-dokumentum alkalmazások lesz csatlakoztatva script az ilyen? A válasz egyszerű - semmi! Nem így tudjuk kihasználni ezeket az adatokat. De nincs minden veszve: jön a támogatás paraméter visszahívás. Végül is, ha ez az opció van jelen a query string formátumú paraméter megegyezik a JSON, a választ az „VKontakte” szerver jön egy kicsit más formában. Ebben a példában a válasz az lenne:

És a teljesítménye a kód képesek leszünk, hogy egy kis osztalékot. Elvégre, ha mi vagyunk valahol nyilvánítja parseJSON () függvény hívása előtt az API módszer, mint a paraméter megkapja a választ „VKontakte” kiszolgáló, amely már képes lesz kihasználni. A következő példa parseJSON () függvény egyszerűen közli a felhasználóval, hogy fel van szerelve.

Összehúzzák a fenti, próbálja okoz isAppUser módszer, ha a felhasználó rákattint a linkre (lásd. 2. listát).

1 2 3 4