2011-05-01 19 views

Odpowiedz

19

Aktualizacja: dodałem trochę więcej szczegółów na odpowiedź:

Najpierw trzeba zadzwonić FB.init i dodaj swoją aplikację ID:

FB.init(
{ 
    appId : APP_ID, 
    status : true, // check login status 
    cookie : true, // enable cookies to allow the server to access the session 
    xfbml : true // parse XFBML 
}); 

Następny , sprawdź, czy jest otwarta sesja (tj. użytkownik jest zalogowany)

if(FB.getSession() != null) { 

i kwerendy dane przez:

FB.api('/me', function(response) 
    { 
     alert ("Welcome " + response.name + ": Your UID is " + response.id); 
    }); 
} 

Należy również dodać <div id="fb-root"></div> do <body> swojej strony, a obciążenie <script src="http://connect.facebook.net/en_US/all.js"></script>

Profil użytkownika picure mogą być dostępne jako http:/graph.facebook.com/USERID/picture/

Check odniesienie do interfejsu Graph API tutaj: http://developers.facebook.com/docs/reference/api/user/

i referencja do FB SDK tutaj: http://developers.facebook.com/docs/reference/javascript/

+0

@gary Dodano w imieniu Aleadam –

+0

Dzięki, ale ta funkcja jest nieaktualna. zamiast tego użyj 'FB.getLoginStatus'. – pltvs

+0

Jak uzyskać adres użytkownika? powinienem użyć response.address? –

20

Funkcja używana w zaakceptowanej odpowiedzi na to pytanie w 2011 r. Jest teraz (2012 r.) Przestarzała i usunięta z pakietu SDK Facebooka JS.

Nadal można odkryć użytkownika Facebook identyfikator ze sposobem jak ten getLoginStatus():

FB.getLoginStatus(function(response) { 
    if (response.status === 'connected') { 
    alert ("Your UID is " + response.authResponse.userID); 
    } 
}); 

Uwaga: trzeba jeszcze init Facebook API i umieścić element fb-root w HTML, jak Aleadam wyjaśnione w zaakceptowana odpowiedź.

+1

Twoje rozwiązanie działa, ale jest mały błąd. Użyłem fb.login() i tam musisz użyć response.authResponse.userId zamiast userID. Wciąż dziękuję, wiele zaoszczędziło mi kłopotu. przegłosowano :) –

+0

Dziwne. Zarówno mój test lokalny, jak i dokumentacja Facebooka działają z dużą literą D. Zobacz http://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus/. – user327961

+0

To naprawdę dziwne, ponieważ tutaj nie działa z dużymi literami: D –

0

W authorization parameter swojej aplikacji, upewnij się, że Auth Reklamowe Parametr jest skonfigurowany jako URI Fragment.

Proces logowania z użyciem objaśniono w dokumentacji tam: .

Postępuj zgodnie z trzema krokami, kod źródłowy jest już zapisany.

Powiązane problemy