2011-04-06 102 views
3

我想要驗證用戶使用Facebook登錄憑據。一切正常,除了它沒有重定向到指定的redirect_uri,我需要捕獲signed_request。任何幫助非常感謝。Facebook fb登錄不重定向

下面是我

#fb-root 
%script{:src => "http://connect.facebook.net/en_US/all.js"} 
:javascript 
    FB.init({ 
    appId:'my_client_id_from_the_app_i_created', cookie:true, 
    status:true, xfbml:true 
    }); 
%fb:login-button{:perms => "publish_stream", :redirect_uri => "#{facebook_signin_url}"} 
    Login using your facebook account. 
+2

的[Facebook的FB-登錄不重定向回]可能重複(http://stackoverflow.com/questions/5566545/facebook-fb-登錄而不是重定向回) – 2011-04-06 13:42:47

回答

3

既然你提到signed_request我假設你正在建設一個帆布或頁面標籤的應用程序。

如果是這樣,我不建議您使用登錄按鈕。

相反,只是重定向到OAuth對話框。

這爲用戶創造了更好的體驗。

請參閱https://developers.facebook.com/docs/guides/canvas/#auth瞭解分步說明。

0
  1. 如果您使用的是FB畫布應用程序將回發到 的URL在畫布URL設置中設置,也可以設置使用<%的窗口 位置= fb_login_button('了window.location = 「/users/link_user_accounts「;')%>
  2. redirect_uri不是有效的fb:登錄按鈕選項,因此對fb沒有任何意義。如果您沒有使用畫布,並且這是一個網站,並且您想在登錄後重定向,請使用onlogin選項(而不是redirect_uri)來調用JavaScript以發佈到您想要的位置。看看這是如何在authlogic,Facebook的連接寶石做:https://github.com/kalasjocke/authlogic_facebook_connect/blob/master/lib/authlogic_facebook_connect/helper.rb