FbGraph OAuthException Неверный токен доступа OAuth

Я использую FbGraph в своем приложении Ruby on Rails вместе с Omniauth. Я использую метод на стороне сервера, чтобы получить маркер долгосрочного (60 дней) доступа для пользователя и затем сохранить его в переменной сеанса. При попытке получить доступ к API в следующем коде:

token = session[:facebook_token]

user = FbGraph::User.me(token)
user = user.fetch

я получил OAuthException :: Invalid OAuth access token, Однако, когда я добавляю puts token и скопируйте напечатанный токен в Facebook Graph API Explorer (онлайн-инструмент). У меня нет проблем, и токен сообщается как действительный... Я даже могу выполнить вызов API, который не проходит через FbGraph.

Я использовал краткосрочные токены из JavaScript SDK (2 часа), и тот же код работал нормально, поэтому что-то в переходе на долгосрочный токен все испортило.

1 ответ

Как ты делаешь session[:facebook_token] на первом месте? Это звучит как проблема кодировки символов или, возможно, просто лишние пробелы.

Почему бы тебе не попробовать user = FbGraph::User.me(token.strip)

Кроме того, вы можете обновить (расширить) сам токен доступа следующим образом: https://github.com/nov/fb_graph

Другие вопросы по тегам