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