5

我已经使用 Facebook connect 设置了我的应用程序(使用Omniauth),它似乎适用于某些帐户,但对于其他帐户,它会返回臭名昭著的An error occurred错误。

这并不是说它偶尔会发生,而是对某些用户来说始终如一。沙盒模式已关闭,APP 密钥等和域显然设置正确,否则总是会抛出错误。如何从一条与那条一样模糊的消息中调试它?

编辑 2

App 域已正确设置,命名空间也是如此。我选择了“带有 Facebook 登录的网站”和“移动网络”,并且 URL 是正确的,而不是 HTTPS(两者都使用相同的 URL)。为了以防万一,我还重置了应用程序密码,但这并没有解决问题。

4

2 回答 2

0

尝试以下示例:

像这样的omniauth_callbacks_controller::process_callback方法

# If a user is signed in then he is trying to link a new account
    if user_signed_in?
      if authentication.persisted? # This was a linking operation so send back the user to the account edit page  
        flash[:success] = I18n.t "controllers.omniauth_callbacks.process_callback.success.link_account", 
                                :provider => registration_hash[:provider].capitalize, 
                                :account => registration_hash[:email]
      else
        flash[:error] = I18n.t "controllers.omniauth_callbacks.process_callback.error.link_account", 
                               :provider => registration_hash[:provider].capitalize, 
                               :account => registration_hash[:email],
                               :errors =>authentication.errors
      end  
      redirect_to edit_user_account_path(current_user)

并参考以下位置:OAuthException (#210) 用户不可见

我认为这可以帮助您解决问题。

于 2012-12-29T08:07:23.767 回答
-1

您能否安装 Wireshark 并使用好帐户和坏帐户来回监控流量 - 然后确定差异?

于 2012-12-28T20:04:29.110 回答