Получение токена пользователя (найденного в Access Token Tool) с помощью кода C#/PHP

У меня есть приложение Facebook, и я могу получить токен приложения, позвонив

https://graph.facebook.com/oauth/access_token?
    client_id=YOUR_APP_ID
    &client_secret=YOUR_APP_SECRET
    &grant_type=client_credentials

как указано на странице Аутентификация в качестве приложения. Я вижу, что этот токен приложения также доступен на странице Access Token Tool вместе с токеном пользователя для приложение. Мне нужен токен пользователя, чтобы использовать /USER_ID/accounts для пользователей, которые уже одобрили мое приложение с разрешениями manage_pages.

В основном я хочу публиковать сообщения на странице пользователей Facebook, когда они отправляют статью в мое приложение. Некоторые пользователи находятся в местах, где Facebook заблокирован, поэтому я не могу использовать обычный Javascript SDK.

Редактировать 1: я понимаю концепцию токенов доступа пользователей и их получение через SDK с перенаправлением OAuth. Мой вопрос касается токена пользователя для приложения, как показано на странице инструмента токена доступа, а не токена доступа пользователя (для которого требуется клиентский доступ к Facebook)


person thewheat    schedule 15.05.2012    source источник


Ответы (1)


Чтобы получить токен пользователя без использования javascript SDK, вам необходимо аутентифицировать пользователя с помощью Перенаправление диалога OAuth. По сути, вы предлагаете пользователю получить код из Facebook, который вы можете обменять на токен доступа. На этом этапе вы должны сохранить токен доступа и повторно использовать его для всех запросов, требующих аутентификации. Имейте в виду, однако, что вам нужно будет определить, когда срок действия токена истек или признан недействительным, и если это так, вам нужно будет повторно выполнить процесс перенаправления аутентификации и обмена токенами.

person Jesse Proulx    schedule 15.05.2012
comment
Спасибо за повтор, Джесси, но моя дилемма заключается в том, что у некоторых пользователей нет доступа к Facebook, и поэтому перенаправление диалога OAuth невозможно. Вот почему я хочу, чтобы мое приложение выполняло аутентификацию от имени пользователя после того, как они авторизуют мое приложение и после истечения срока действия их первоначального токена доступа пользователя. - person thewheat; 16.05.2012