Omniauth+;尝试取消弹出窗口时出现facebook错误

Omniauth+;尝试取消弹出窗口时出现facebook错误,facebook,ruby-on-rails-3,callback,omniauth,Facebook,Ruby On Rails 3,Callback,Omniauth,我在rails应用程序中使用omniauth facebook gem,允许用户通过facebook登录。它工作得很好。但我的问题是,当我点击“取消”按钮时,我得到了以下错误 (facebook) Callback phase initiated. (facebook) Authentication failure! invalid_credentials: OmniAuth::Strategies::OAuth2::CallbackError, OmniAuth::Strategies::OA

我在rails应用程序中使用omniauth facebook gem,允许用户通过facebook登录。它工作得很好。但我的问题是,当我点击“取消”按钮时,我得到了以下错误

(facebook) Callback phase initiated.
(facebook) Authentication failure! invalid_credentials: OmniAuth::Strategies::OAuth2::CallbackError, OmniAuth::Strategies::OAuth2::CallbackError


Started GET "/auth/facebook/callback?error_reason=user_denied&error=access_denied&error_description=The+user+denied+your+request." for 127.0.0.1 at 2012-05-18 11:42:36 +0530

怎么了?添加/auth/failure=>'pages#home'也不起作用。请帮助在本地(本地主机)调试时,我遇到了相同的问题。
在一个公开的url上,它可能需要FB才能“看到”你

您可以在公共url上进行测试,或者使用某种隧道之王(这是一个非常简单的示例)


HTH

查看上一节,看看这是否有帮助。它建议增加

OmniAuth.config.on_failure = Proc.new { |env|
  OmniAuth::FailureEndpoint.new(env).redirect_to_failure
}
到您的omniauth初始值设定项。这在本地对我有效,然后您只需要定义/auth/failure路径和操作