我正在通過現有的facebook
帳戶登錄網站。所以我註冊了一個facebook應用程序,並存儲了api和secret in development.rb
和production.rb
文件。然後我用omniauth-facebook gem
+ devise gem
來實現這個。它工作完美。Rails + omniauth + facebook - csrf檢測到
順便說一句,用戶可以通過內部身份驗證(由設計)或通過usig facebook賬戶登錄。
但是有一個奇怪的問題。它工作完美只有如果我登錄Facebook的帳戶,我註冊了一個應用程序。
因此,我註冊了另一個未在我的Rails應用程序中使用的應用程序並嘗試登錄的Facebook帳戶。它導致錯誤「發生錯誤,請稍後再試。」 ...... CSRF檢測「‘
我試圖用1.4.0 omniauth Facebook的寶石,而不是一個1.4.1,但它也造成了一個錯誤「must pass either a
代碼’無法從Facebook賬戶,因爲您進行身份驗證」 parameter or a signed request (via
signed_request parameter or a
fbsr_XXX cookie)
「
寶石
oauth2 (0.8.0)
omniauth (1.1.0)
omniauth-oauth2 (1.1.0)
omniauth-facebook (1.4.1)
warden (1.2.1)
devise (2.1.2)
你的想法嗎?
這可能也有幫助:http://stackoverflow.com/questions/11597130/omniauth-facebook-keeps-reporting-invalid-credentials – imgrgry 2012-08-20 16:55:15
謝謝:)你已經節省了我很多時間:) – 2013-01-19 08:56:20