Oauth 2.0 не может получить токен доступа из значения code_ SignQrequest - PullRequest
7 голосов
/ 15 декабря 2011

Я перехожу на Oauth 2.0.Мой текущий сайт использует JS SDK, имеет кнопку fb-login, затем я захожу в Graph для получения сведений о пользователях.

У меня проблемы с получением токена доступа для получения этих данных из Graph.

Одной из проблем может быть то, что диалоговое окно JS SDK не перенаправляет меня на URL-адрес, который, как он говорит, должно быть, то есть то, которое с? Code = XXXXXXX, которое я затем могу использовать для получения токена доступа.

ИтакЯ посмотрел на php SDK (я использую ASP), чтобы увидеть, как он это делает.Я проанализировал значение подписанного запроса в файле cookie, получил значение в параметре code для добавления в URL-адрес токена, но не могу получить токен доступа.Это значения, которые я использую:

Проанализированные данные подписанного запроса:

{"algorithm":"HMAC-SHA256","code":"2.AQCovUOFCduELbna.3600.1323900000.1-773555243|Y_cW4riF4K7el_9a4oVNjL0qvZc","issued_at":1323895617,"user_id":"XXXXXXXXXX"}

Token URL: https://graph.facebook.com/oauth/access_token?
           client_id=XXXXXXXX&
           redirect_uri=XXXXXXXX&
           client_secret=XXXXXX&
           code=2.AQCovUOFCduELbna.3600.1323900000.1-773555243|Y_cW4riF4K7el_9a4oVNjL0qvZc

Это ответ:

{"error":{"message":"Error validating verification code.","type":"OAuthException"}} 

Кажется ли значение кода вправильный формат?Есть идеи, что не так?

1 Ответ

10 голосов
/ 15 декабря 2011

точно такая же проблема здесь ...

решение: если код извлекается из содержимого cookie, оставьте параметр redirect_uri пустым

попробовать

URL токена: https://graph.facebook.com/oauth/access_token?client_id=XXXXXXXX&redirect_uri=&client_secret=XXXXXX&code=2.AQCovUOFCduELbna.3600.1323900000.1-773555243|Y_cW4riF4K7el_9a4oVNjL0qvZc

работал на меня!

...