2012-02-23 3 views
1

Я Использование JavaScript SDK для входа пользователяне может получить маркер доступа с кодом

FB.init({appId: applicationId, status: true, cookie: true, xfbml: true, oauth: true}); 
FB.login(callbackFunction, {scope:permissions}); 

я получить действительный маркер доступа в authResponse, а также подписанный куки установлен, который декодируется имеет код.

в соответствии с маркером доступа документации может быть получен с

https://graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&client_secret=YOUR_APP_SECRET&code=THE_CODE_FROM_ABOVE

, когда я попробовать это с кодом я получаю ошибки Ошибки проверяющей код подтверждения. 100

как redirect_uri Я пробовал uri, который установлен как домен приложения и сайтURL. они дают эту ошибку. с другим uri я получаю Недопустимый redirect_uri: данный URL-адрес не разрешен конфигурацией приложения. 191

я здесь смешивания на стороне клиента потока и серверный поток в плохом состоянии, или я должен использовать некоторые redirect_uri параметр при использовании FB.init или FB.login и использования, что точные URI при получении маркера доступа с помощью кода?

+0

Вы уверены, что ваш callbackFunction правильно декодирует ключ? Не публикуйте его, но он должен выглядеть примерно так: 111111_111111111111? Имеются ли ваши access_token и client_id? Вы уверены, что передаете правильный access_token, чтобы запросить ключ? – Nix

ответ

0

FB.login(callbackFunction, {scope:permissions}); функция обратного вызова передается объект,

 authResponse: {   /* Information about the current session */ 
      userID: ""   /* String representing the current user's ID */ 
      signedRequest: "", /* String with the current signedRequest */ 
      expiresIn: "",  /* UNIX time when the session expires */ 
      accessToken: "", /* Access token of the user */ 
     } 

В здесь маркер доступа пользователя, который не должен быть преобразованы путем вызова другой URL. Он готов идти около часа, тогда вам нужно будет получить новый.

Смежные вопросы