私はFBキャンバスアプリを作っています。
問題: ユーザーが認証した後、アプリの非キャンバス バージョンに戻されます。これが私のコードです:
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
、通常の (非キャンバス) アプリの URL ( ) を介して送信されるため、以下では単に通常のアプリ。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 に指示するにはどうすればよいですか?