是否可以使用Rails 4中的Oauth2 gem连接到Facebook? 我在调用Oauth2的get_token方法时遇到了错误。
def login_facebook
redirect_to client.auth_code.authorize_url(
:redirect_uri => 'http://localhost:3000/oauth/facebook_callback'
)
end
def facebook_callback
token = client.auth_code.get_token(
params[:code],
:token_url => "/oauth/token",
#:token_url => "/oauth/access_token",
# :parse => :query,
:redirect_uri => 'http://localhost:3000/oauth/facebook_callback'
)
puts "**************"
puts token.inspect
puts "**************"
end
private
def client
OAuth2::Client.new(APPLICATION_ID, APPLICATION_SECRET, :site => FB_GRAPH_URL)
end
答案 0 :(得分:0)
请求访问令牌的默认网址已从/oauth/access
(这是FB使用的)更改为/oauth/token_token
。现在,您需要将此设置覆盖为:
OAuth2::Client.new(FACEBOOK_APP_ID, FACEBOOK_APP_SECRET, {
:token_url => '/oauth/access_token',
:redirect_uri => 'http://localhost:3000/oauth/facebook_callback'
})
您可能希望使用Koala gem与Facebook轻松沟通。