我正在制作FB Canvas应用程序。
问题:用户进行身份验证后,会返回到应用程序的非Canvas版本。这是我的代码:
provider :facebook, CONFIG['app_id'], CONFIG['secret_key'], :scope => "publish_stream, rsvp_event"
match "/auth/facebook/callback" => "sessions#oauth_create"
match "/auth/facebook", :as => "facebook"
match "/auth/failure" => "sessions#oauth_failure"
当用户从Facebook返回时,他们会被发送到oauth_create
(下面) - 但是,他们会通过普通(非画布)应用网址(localhost:3000
)发送给它而不是画布应用程序(apps.facebook.com/my-app-namespace
)所以下面的redirect_to root_path
只是将它们发送到常规应用程序。
def oauth_create
auth = request.env["omniauth.auth"]
t = auth["credentials"]["token"]
session[:facebook_token] = t
redirect_to root_path
end
我正在使用omniauth-facebook gem。
如何告知FB在身份验证后将用户发送到画布应用程序?