Înainte de a vă gândi cum să interacționați cu orice sistem, trebuie să vă imaginați cum este construit din interior. Sistemul de operare creatorii Facebook au ales Linux, cea mai mare parte a codului este scris în PHP (ceea ce înseamnă HipHop compilat în C ++). Baza de date MySQL este utilizată ca un magazin de perechi cheie-valoare, fără structuri complexe și interogări. Memacached este folosit pentru cache.
Pentru a reprezenta amploarea sistemului, atenția ar trebui acordată următoarelor statistici:
Toate obiectele din grafic pot fi legate între ele prin relații, puteți verifica existența acestei relații în felul următor:
Principalele caracteristici Facebook:
Mai presus de toate obiectele descrise mai sus, sunt permise anumite operații. Operația principală este de a obține obiectul, deci luați în considerare unele caracteristici API care o vor face mai convenabil:
Selecție - vă permite să specificați exact ce câmpuri ale obiectului să se întoarcă:
Este, de asemenea, posibil să solicitați mai multe obiecte în același timp:
Pentru confort, un identificator special:
Există o modalitate universală de a afișa o imagine a oricărui obiect:
Firește, această abordare funcționează cu profile, evenimente, grupuri și alte obiecte ale graficului. zahăr suplimentar sintactic în parametrii posibili: pătrat (50x50), mici (50 pixeli lățime, înălțimea este selectată automat), mare (200 pixeli lățime, înălțimea variat). Exemplu de interogare:
Firește, există mai multe informații decât putem accepta pentru o singură solicitare, deci luați în considerare mecanismul de recuperare a datelor de la o pagină la alta:
Este posibil să specificați formatul datei returnate:
Pentru a termina scurta revizuire a diagramei API, urmează cea mai interesantă posibilitate - actualizări în timp real. Prezența acestui articol arată seriozitatea cu care Facebook se referă la integrarea cu alte aplicații. Actualizările în timp real permit dezvoltatorilor de site-uri terțe să primească informații despre unele modificări aduse utilizatorilor lor. Facebook în sine anunță că utilizatorul a scris un mesaj către linia de știri, a adăugat un prieten sau a făcut clic pe butonul respectiv. Acest punct dezvoltatorii de la necesitatea de a interoga periodic API despre astfel de modificări. Unele detalii despre acest mecanism:
- În timp real - aceasta poate fi de câteva minute;
- se aplică numai utilizatorilor, permisiunilor, obiectelor de pagină (pentru aplicații);
- necesită un abonament, sprijin pentru un mecanism special de interacțiune;
- să luați un site terță parte trebuie să solicite atât GET (pentru verificarea abonamentului) cât și POST (pentru date).
Abonamentele sunt stocate în acest formular:
Mecanismul de interacțiune Faceook și un site terță parte semnat pentru actualizări:
- În primul rând facebook trimite o solicitare GET către serverul site-ul cu trei parametri: hub.mode (înscrie aici linie va fi transferat), hub.challenge (șir arbitrar) și hub.verify_token (Simbolul site-ului, care a fost trimisă pe Facebook, în cererea de aderare).
- Mai întâi, site-ul ar trebui să verifice dacă se potrivesc tokenul trimis și primit.
- Apoi trimiteți un șir arbitrar înapoi (acest pas evită cazul în care Facebook poate fi utilizat pentru atacurile DDoS pe serverul de site).
- Numai după pașii de mai sus, facebook trimite o cerere POST către ID-ul obiectului și o listă cu câmpurile care au fost modificate.
Va trebui să primiți date noi într-o interogare separată.
Pentru autentificare, Facebook utilizează protocolul OAuth 2.0, esența căruia are trei pași:
După ce treceți prin acești trei pași, site-ul primește "token access access", ceea ce vă permite să faceți cu datele utilizatorului toate informațiile pe care le-a permis.
Autentificare, partea serverului:
Dacă autentificarea este finalizată cu succes, site-ul în cele din urmă devine accesstoken, cu care a trecut o altă opțiune - expiră, timpul în secunde că acest token va funcționa.
Este posibil să solicitați permisiunea pentru offline_access, atunci tokenul va acționa pentru totdeauna.
Sunt întreprinse acțiuni similare, ale căror rezultate vor fi
Dezvoltate de modulele Facebook pot fi ușor integrate într-un site terț, acestea vă permit să integrați toate funcțiile cele mai comune:
În această secțiune, vom examina instrumentele de bază pe care le puteți utiliza pentru a vă dezvolta pe Facebook.
Vă permite să analizați etichetele fbml din DOM
API-uri suplimentare - FQL, API vechi REST
De asemenea, există "funcții încorporate" acum (), strlen (), substr () și strpos ().
Sau mai complicat - scoateți informații despre prieteni
Versiune imprimabilă