Facebook SDK: sprawdź tokeny po stronie serwera

Podczas pracy z Facebook SDK (a dokładniej przy implementacji funkcji logowania Facebooka w interfejsie REST), token, który klient otrzymał od Facebooka, musi najpierw zostać sprawdzony pod kątem ważności przez serwer przed dalszymi operacjami .


Najłatwiej to zrobić za pomocą nieudokumentowanego wywołania interfejsu API

GET https://graph.facebook.com/me?access_token=TOKEN

gdzie TOKEN to wspomniany token dostępu, który ma ponad 200 znaków. Odpowiedź jest albo pomyślną odpowiedzią

{
   "id": "XXXXXXXXXXXXXXXXX",
   "email": "david\u0040vielhuber.de",
   "first_name": "David",
   "gender": "male",
   "last_name": "Vielhuber",
   "link": "https://www.facebook.com/app_scoped_user_id/XXXXXXXXXXXXXXXXX/",
   "locale": "de_DE",
   "name": "David Vielhuber",
   "timezone": 2,
   "updated_time": "2014-02-09T18:47:26+0000",
   "verified": true
}

W tym miejscu należy użyć identyfikatora użytkownika do ostatecznego sprawdzenia.

W przeciwnym razie otrzymasz niepozorny komunikat, że nie jest to prawidłowy token:

{
   "error": {
      "message": "Invalid OAuth access token.",
      "type": "OAuthException",
      "code": 190
   }
}
Plecy