【发布时间】:2012-08-15 14:16:58
【问题描述】:
我正在通过现有的facebook 帐户登录网站。所以我注册了一个 facebook 应用程序并将 api 和 secret 存储在 development.rb 和 production.rb 文件中。然后我用omniauth-facebook gem + devise gem 来实现这个。它工作完美。
顺便说一句,用户可以通过内部身份验证(通过设计)或使用 facebook 帐户登录。
但是有一个奇怪的问题。 只有如果我登录到我注册了一个应用程序的 facebook 帐户,它就可以完美运行。
所以我注册了另一个 Facebook 帐户,但我的 Rails 应用程序中没有使用该应用程序并尝试登录。它导致错误“发生错误。请稍后再试。” ... “无法通过 Facebook 帐户对您进行身份验证,因为“检测到 Csrf””
我尝试使用 1.4.0 omniauth-facebook gem 而不是 1.4.1,但它也导致了错误“must pass either acodeparameter or a signed request (viasigned_requestparameter or afbsr_XXXcookie)”
宝石
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)
你的想法?
【问题讨论】:
标签: facebook ruby-on-rails-3.2 omniauth