Ako ste ikada isprobali Facebook, tada ste vidjeli da je na njemu dostupan i ogroman broj aplikacija. Zabavne, reklamne, poslovne - ima ih svakakvih, a možete ih lako napraviti i vi. Ovo "lako" shvatite uslovno, jer ipak je potrebno znati kako napraviti klasičnu web aplikaciju da biste je mogli prilagoditi Facebooku. Mogućnosti za pisanje aplikacija za Facebook su danas nesagledivo velike - razvijati aplikaciju možete u praktično bilo čemu, bitno je samo da se držite nekih pravila i ograničenja koje vam Facebook postavlja. Takođe, dobićete velik set funkcija uz čiju pomoć možete, ukoliko vam korisnik vaše aplikacije dozvoli, pristupati određenim njegovim podacima te tako graditi svoju aplikaciju po želji.

Vjerovatno ste već i sami primijetili da ukoliko ste koristili neku od mnogih na Facebook-u dostupnila aplikacija, prije odobrenja za korišćenje iste vidite popis svih dozvola koje ona od vas traži. Za pristup osnovnim podacima, podacima sa profila, objavu sadržaja na sopstvenom zidu - sve su to vrste dopuštenja koje aplikacija može tražiti. To je slučaj i s vašom aplikacijom, ali imajte na umu da postoji stroga veza između broja korisnika koji će vašu aplikaciju prihvatiti i količine dopuštenja koje za nju tražite. Ukoliko tražite više dopuštenja, određen broj korisnika ih se neće odlučiti dati i neće koristiti vašu aplikaciju. Zato, tražite samo one dozvole koje su vam zaista važne.

Kako krenuti?

Prvih par koraka su najlakši dio posla. Registrujte se na Facebook i prijavite se na isti (ako već niste), posjetite https://developers.facebook.com/apps i kreirajte svoju aplikaciju. Stvar je u ovom dijelu prilično jednostavna (pogotovo ako pogledate slike u tekstu), ali neka su pojašnjenja ipak potrebna. Potrebno vam je vlastito, javno dostupno mjesto na Internetu na kojem ćete držati vašu aplikaciju jer Facebook ne pruža hosting za vaše aplikacije (što je i logično). U opcijama prilikom kreiranja aplikacije morate postaviti sve nužne parametre poput web adrese gdje se aplikacija nalazi, njenog mjesta na Facebooku i stično, a po želji možete urediti i podatke poput načina integracije, mobilnih podešavanja, naprednih opcija.
Mi smo kreirali vrlo jednostavnu aplikaciju (koja zapravo i nije aplikacija u punom smislu riječi, već obična html stranica) - stvorili smo novi fajl, imenovali ga default.asp i u njega smo osim klasičnih <html>. <head> i <body> tagova unijeli samo jednu jedinu rečenicu - "Ovo je test aplikacija". Nakon što smo je smjestili na željenu adresu i učitali u Facebooku, vidjeli smo da stvar radi.

E, sad tek kreće ono pravo

Vaša aplikacija se prikazuje unutar okvira koji se u fejsbučnoj terminologiji zove "Canvas". Njegova širina je 760 piksela (ili 520 piksela ukoliko koristite dodatne tabove unutar stranice vaše aplikacije) i o tome morate u aplikaciji voditi brigu. Kad je pak u pitanju visina, možete postaviti Canvas sa scrollbarima ili bez njih - preporučujemo naravno ovo drugo jer bolje izgleda, a visina okvira će se automatski podešavati. Cijela poenta aplikacije na Facebook-u je da je izradite kao i bilo koju drugu aplikaciju, ali uz pomoć Facebook funkcija možete dobiti pristup podacima korisnika koji je koristi, pisati po njegovom zidu, njegovi prijatelji mogu vidjeti što je korisnik radio vašoj aplikaciji i slično. Naravno, samo ako korisnik to dopusti. U tu svrhu koriste se razni API-ji (API je skraćenica od Application Programming Interface) koje je Facebook prilagodio programerima i tokom godina ih mijenjao i dorađivao. Da biste te API-je koristili, možete koristiti razvojne pakete primjerene tehnologiji u kojoj aplikaciju razvijate. Npr, ako radite u PHP-u, koristićete PHP SDK, ako radite u nekoj drugoj web tehnologiji koristićete JavaScript SDK, ako radite aplikaciju prilagođenu i0S-u gledaćete u smjeru iOS SDK, za Android ćete trebati Android SDK... Naravno, niko vas ne sprečava koristiti i JavaScript SDK dok radite u PHP-u. Uglavnom, shvatili ste.

Prvo autorizacija, onda ostalo

Da biste mogli iz vaše aplikacije pristupati podacima s Facebooka, morate autorizovati korisnika, ali i aplikaciju. To se radi na vrlo jednostavan način, pozivom web-adrese oblika:
https://www.facebook.com/dialog/oauth?client id=YOUR APPID&redirect uri=YOURURL.

Ovo je obavezno prilikorm pokretanja aplikacije jer na taj način, nakon što uključite ID aplikacije (dostupan unutar Facebook administracije) te web adresu na koju će se preusmjeriti web pretraživač nakon što je autorizacija uspješna, sam Facebook obavi sav prljav posao za vas. Konkretno, nakon preusmjeravanja na ovu web adresu, Facebook će pogledati je li korisnik logovan, ako nije - tražiće korisničko ime i lozinku. Ako jest, pogledaće je li vaša aplikacija već odobrena od strane tog korisnika. Ako nije, prikazaće prozor u kojem će navesti da vaša aplikacija treba pristup osnovnim podacima pa će pitati korisnika želi li to odobriti. Ako on to odobri (ili je ranije odobrio), stvoriće se kod koji će se proslijediti web adresi koju ste naveli. S tim kodom možete zatražiti token koji je neophodan da biste pristupali željenim podacima. Iz vaše aplikacije učitajte adresu:

https://graph.facebook.com/oauth/access_token?client id=YOUR APPID&redirect uri=YOURURL&client secret=YOURAPP SECRET&code=CODE

na sličan način ćete ovdje dobiti token, Sve nabrojano može se nalaziti unutar iste početne stranice, samo u nju treba ugraditi malu provjeru je li kod dostupan ili nije i je li token dostupan ili nije te na osnovu tih podataka preusmjeriti web pretraživač na gore navedene web adrese. Primijetite da je u pozivu druge web adrese (sa koje dobijate token) potrebno navesti i tajni kod aplikacije. On je naveden u administraciji vaše Facebook aplikacije i njega ne smijete dijeliti ni sa kim. Ovaj način autorizacije nužan je zbog provjere da baš Facebook korisnik pristupa vašoj aplikaciji ali i da je baš vaša aplikacija ta koja je autorizovana od strane Facebooka. Ovaj početni korak pri izradi aplikacije je nužan i u svakoj aplikaciji se mora izvršiti. Dodatno treba napomenuti da prilikom autorizacije od strane korisnika možete koristiti i kompleksniji upit od klasičnog s ID-jem aplikacije i web adresom, jer ovaj jednostavan način donosi samo osnovna dopuštenja dok dodatnim parametrima možete tražiti i dodatan set dopuštenja, npr. za slanje mail-a korisniku, pristup široj grupi podataka i slično. Osim postupka autorizovanja, potrebno je poznavati i jezgru Facebooka kao platforme, a to je Graph API. Riječ je o sistemu koji omogućava, uz pomoć token-a kojeg ste dobili autorizacijom, pristup korisnicima, stranicama, događajima, statusnim porukama, profilnim slikama, ukratko - svemu što se na Facebook-u naIazi a za što vam je korisnik dao prava pristupa. Više detalja o Graph API-ju potražite na zvaničnoj Facebook stranici.

Kuda dalje?

Kojim ćete putem dalje krenuti, zavisi samo o vašoj mašti i potrebama naručioca. U zavisnosti o tome koja je svrha aplikacije koju izrađujete te kakva su vaša znanja, koristićete prikladno odabranu platformu za razvoj i adekvatnu bazu podataka. Do koje mjere ćete se integrisati u Facebook takođe zavisi samo o vašim potrebama. Važno je samo imati na umu da se Facebook stalno razvija što znači i da će njegovi API-ji vjerovatno doživjeti dogradnje. Zato treba stalno biti upoznat s događanjima i redovito pratiti novosti vezane za jedan od najvažnijili svjetskih siteova.

Može i obrnuto

Ako već imate postojeći web koji želite povezati s Facebook-om ali ne na način da ga prikažete unutar Facebooka nego da Facebook prikazete unutra web sajta, za to služe društveni dodaci (Social Plugins). Postoji ih desetak: od najjednostavnijih poput dugmića "Sviđa mi se" i slanja sadržaja prijateljima pa sve do komentara, prikaza aktivnosti korisnika i slično. Ove dodatke karakterizuje relativno jednostavno postavljanje na web, ali i djelimična mušičavost - zna se dogoditi da jednostavno ne rade kako treba, a onda se sami od sebe "poprave". Ali, takve se stvari događaju rijetko. Za više informacija posjetite http://developers.facebook.com/docs/plugins/.

Jednostavan primjer

Budući da je izrada čak i najjednostavnije Facebook-aplikacije pomalo komplikovana jer zahtijeva nekoliko izmjenjivanja podataka o logovanju (kod, token) te nekoliko fajlova, odlučili smo prikazati jednostavan primjer s Facebookove stranice namijenjene programerima, a taj primjer ispisuje ime trenutno prijavljenog korisnika. Budući da je riječ samo o Javascriptu, kod izgleda pomalo nerazumljivo, ali cijeli stane u jedan fajl. Proučite i pokušajte sami, s tim da nemojte zaboraviti zamijeniti YOUR_APP_ID pravim ID-jem vaše aplikacije.

Mjesta koja vrijedi zapisati

Postoji nekoliko linkova koje vrijedi upamtiti, ali daleko najvažniji od njih je http://developers.facebook.com/ To je početna tačka za sve developere koji žele bilo šta raditi s Facebook-om. Ne obazirite se na prevod koji je samo djelimično prisutan - većinom je sve na engleskom. Evo i nekih drugih važnih linkova, koji su većinom podlinkovi glavne stranice za programere:

NAPOMENA: Ako želite da promovišete link u ovom članku, javite mi.

Ako vam se ovaj članak dopao, lajkujte FB stranicu DM Spot, Twitter ili LinkedIn i budite obavješteni kad novi članak bude objavljen.

 


Dobrodošli

Hvala Vam što ste izabrali posjetiti DM Spot portal.

Na njemu ćete naći:

  • podatke o autoru,
  • članke na temu nauke i tehnologije,
  • eBiblioteku, preporuke,
  • članke iz života i stila i
  • promociju potencijala Republike Srpske.

Vidjećete i nešto što se nalazi između redova, moju ljubav i trud da ovaj sajt i komunikaciju prema Vama učinim originalnom, korisnom i atraktivnom i obećanje da neću prestati da se trudim.

Ukoliko nađete da Vam je posjeta ovom portalu bila koristila u bilo kom pogledu, razmislite o tome da mi platite kafu kako biste podržali moj rad.

Recommended