Java alkalmazások facebook alapú google app motor
A Google App Engine (GAE) egy felhőalapú platform-as-a-service (PaaS) rendszer, amely lehetővé teszi a regisztrált fejlesztők számára, hogy futtassák a Python, a Java vagy a Google Google infrastruktúrájába írt alkalmazásaikat. Ez a cikk bemutatja, hogyan regisztrálhat egy Facebook-alkalmazást, fejlesztheti Java-ban és telepítheti ingyen a GAE platformon a Facebookon regisztrált összes felhasználó javára. (Ne feledje, hogy a Google korlátozza a GAE-ben telepített alkalmazás által felhasznált erőforrások napi használatát).
Egy egyszerű alkalmazás, amelyet létrehozunk, felépíti a felhasználó összes barátainak azonosítási azonosítóit és fotói a profilból - mint a régi minta Facebook felhasználói profiloldalán. Egy alkalmazás fejlesztéséhez szükség van:
Az alkalmazás forráskódja megtalálható a cikk letöltéséhez.
Alkalmazás regisztrációja
Az első lépés, hogy regisztrálja alkalmazását a Facebookon és a GAE-n. Jobb egy alkalmazás létrehozása mindkét platformon egyszerre, így az általad megadott adatok megegyeznek.
Alkalmazás regisztrálása a Facebookon
Kattintson az Alkalmazások oldal jobb felső sarkában található Új alkalmazás létrehozása gombra az 1. képen megjelenő Új alkalmazás létrehozása párbeszédpanel megnyitásához.
1. ábra Új alkalmazás létrehozása a Facebookon


2. ábra: A Facebook alkalmazások fő beállítási párbeszédablaka


Vegye figyelembe az App ID és App Secret kulcsokat a képernyő tetején (a 2. ábrán rejtve). A Facebook ezeket a gombokat használja az alkalmazás azonosítására. Tartsa titokban, és ne hagyja, hogy más fejlesztők használják őket, hogy ne használják fel rosszindulatúan a tudásod nélkül.
Adja meg az alkalmazásdomainet az Alkalmazás domainek mezőben. Ennek egy GAE domainnek kell lennie, amelyen regisztrálja az alkalmazást a weboldalon GAE fejlesztők számára, ezért véget kell vetnie a .appspot.com webhelynek. Például a 2. ábrán beírtam a myoldfacebookfriends.appspot.com értéket. Ez a domain már nem érhető el, ezért másikat kell használni. Meg kell egyeznie azon alkalmazásazonosítóval, amelyet az alkalmazásnak a GAE-ben való regisztrálásakor használ.
Alkalmazás regisztrálása a GAE-ben
Ha az alkalmazás regisztrált a Facebookon, be kell jelentkeznie a GAE-be.
3. ábra. GAE párbeszédpanel Alkalmazás létrehozása


Kattintson az Alkalmazás létrehozása gombra. a regisztrációs folyamat befejezéséhez a GAE-ben.
Alkalmazásfejlesztés
Az Eclipse programban hozzon létre egy új GAE projektet a Fájl> Új> Webes alkalmazásprojekt kiválasztásával vagy az Új webes alkalmazásprobléma gombra a Google Szolgáltatások és telepítési eszközök menüben. Adja meg a projekt nevét és a csomag nevét. Törölje a jelölőnégyzetet A Google Web Toolkit használata. Töltse le a RestFB JAR fájlt (lásd: Források), és adja hozzá a projekt WEB-INF / lib mappájához.
Adja hozzá az alkalmazás szervlet definícióját a web.xml projektfájlhoz. A meghatározásom az 1. listán látható.
Listázás 1. Servlet definiálása
Ne feledje, hogy
Egy aláírt kérés a Facebookhoz
A 2. lista az aláírt kérés Java objektumának forráskódját mutatja. Az érthetőség érdekében kihagytam az összes módszert, amit kaptam és beállítottam; a letöltés forráskódjában találhatók (lásd a Letöltés részt).
Listázás 2. Egy aláírt kéréselem
Listázás 3. Segéd módszer a lekérdezés tartalmának kódolására és dekódolására
Servlet létrehozása
Most elkezdheti írni a kiszolgálón futó alkalmazáskódot. Hozzon létre egy új osztályt ugyanazzal az aláírással, mint a definíció
Listázás 4. Az OAuth token kibontása
API grafikon Facebook
A felhasználó barátai listájának megtekintéséhez kattintson a barátok linkjére. Ne feledje, hogy a böngésző URL-értéke így néz ki: felhasználói azonosító / barátok. A kapcsolódási paraméter egy funkció hívásakor általában ugyanaz, mint a Graph Explorerben. De mivel az alkalmazás a bejelentkezett felhasználó adatait használja, a felhasználói azonosító módosítható. ami nekem / barátok. A hívás nem kezelt kapcsolat típusát adja vissza. és mivel ez egy típus típusú felhasználó. paraméterként kell hozzáadni. A végső kihívás úgy néz ki, mint:
A fetchConnection () hívás eredményét a Connection kategória List objektumainak listája tartalmazza. A Connection osztály végrehajtja az Iterable interfészt. hogy a listából minden lista objektum a kiterjesztett hurok használatával érhető el:
A Felhasználói objektumok listájának böngészése után. a fent leírt módon, egy új sorot fogunk összeállítani az egyes felhasználói objektumok példányváltozóinak felhasználásával:
Végül a szervlet bezárásához zárjuk le a címkét