RkBlog

Hardware, programming and astronomy tutorials and reviews.

API i narzędzia Facebookowe dla serwisów www

Przegląd możliwości API oraz narzędzi Facebooka przeznaczonych do integracji z zewnętrznymi serwisami internetowymi

Facebook oferuje szereg API i usług pozwalających na integrację usług i stron internetowych z serwisem. Przegląd rozwiązań dla serwisów www znajduje się na developers.facebook.com. Można skorzystać z:

Wtyczki społecznościowe

Social plugins to najprostsza metoda na wykorzystanie możliwości Facebooka. Są to widżety wklejane w kod strony i obsługiwane przez serwery FB. Główną wtyczką, czy też widżetem jest przycisk "Lubię to" ("Like"). Pozwala on użytkownikowi FB oznaczyć treść w twoim serwisie, która mu się podoba - np. ciekawy news, czy zdjęcie. Po oznaczeniu treści na jego ścianie pojawi się odpowiedni wpis o tym zdarzeniu. Przycisk bardzo prosto wstawić, wystarczy taki kod:
<iframe src="http://www.facebook.com/widgets/like.php?href=http://www.MOJASTRONA.PL/PODSTRONA.HTML"
        scrolling="no" frameborder="0"
        style="border:none; width:450px; height:80px"></iframe>
Widżet ten można personalizować i dostosowywać do naszych potrzeb. Gdy system ten zacznie funkcjonować na twojej stronie można wykorzystać kolejne elementy takie jak widżet aktywności pokazujący co na twojej stronie robili znajomi odwiedzającego, czy widżet rekomendacji sugerujący treść na bazie tego co użytkownicy polecają, komentują w twoim serwisie.

Wszystkie wtyczki społecznościowe wykorzystują pływające ramki iframe lub tagi XFBML - specjalne tagi parsowane przez JavaScriptowe SDK Facebooka. Rozwiązania oparte na ramkach są prostsze w użyciu, a wersje oparte o XFBML oferują więcej opcji konfiguracji i są bardziej elastyczne.

Autoryzacja użytkowników

Dostępne API pozwala nam także wykorzystać system użytkowników do przyśpieszenie rejestracji, czy logowania użytkownika w naszym serwisie. Jeżeli ma konto na Facebooku to wystarczy że się zaloguje przez specjalny przycisk ("Facebook connect") i będzie można wykorzystać jego dane, w tym automatycznie zalogować, czy zarejestrować użytkownika w naszym serwisie - bez formularzy, czy haseł. Facebook oferuje protokół OAuth 2.0 do przeprowadzania autoryzacji użytkownika (podobnie jak np. na Twitterze). Facebook oferuje gotowe widżety w JavaScriptowym API, które przeprowadzą proces i ustawią odpowiednie ciasteczka, z których będzie można skorzystać w kodzie server-side naszej strony.

Czystszym rozwiązaniem bez JavaScriptowego API jest skorzystanie z usług pośredników takich jak rpxnow.com - są to proste usługi webowe działające na zasadzie przesyłanie danych metodą POST. Pozwają na autoryzację względem Facebooka i wielu innych serwisów społecznościowych. Należy pamiętać że autoryzując użytkownika poprzez taką usługę nie będziemy mogli z marszu stosować widżetów JavaScriptowego API Facebooka dla zalogowanych użytkowników.

Skorzystanie z JavaScriptowego API wymaga stworzenia aplikacji Facebookowej. Po stworzeniu aplikacji potrzebować będziemy jej numer ID by wkleić prosty kod inicjalizujący API:
<div id="fb-root"></div>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<script>
  FB.init({appId: 'ID APLIKACJI', status: true, cookie: true, xfbml: true});
  FB.Event.subscribe('auth.sessionChange', function(response) {
    if (response.session) {
      // Użytkownik zalogowany, cookie stworzone
    } else {
      // Użytkownik się wylogował, brak cookie
    }
  });
</script>
Majac już szkielet można wyświetlić niezalogowanemu użytkownikowi dialog logowania wywołując metodę FB.login, czy stosując tag XFBML - fb:login-button. Po zalogowaniu się użytkownika używając kod server-side można korzystać z metod API pobierających dane o użytkowniku.

Dane użytkowników i treści Facebooka

Za pomocą Graph API można uzyskać dane na temat użytkownika, organizacji, firm i innej treści dostępnej na Facebooku. Dane te można wykorzystać np. przy rejestracji użytkowników lub do budowania własnej treści. Niektóre dane jak adres email, czy data urodzenia są prywatne i wymagają poproszenia użytkownika o dostęp do tych danych przy logowaniu. Opisane jest to w dokumentacji API.

Statystyki

Za pomocą statystyk Insights można monitorować ruch generowany przez użytkowników z Facebooka. Dane podzielone są na domeny, aplikacje i zawierają informacje nie tylko o odwiedzinach, ale także o np. ilości przesyłanych wiadomości między użytkownikami.
RkBlog

10 May 2010;

Comment article