3

我的脸书今天刚刚获批。但是,当我单击“转到应用程序”时,它返回 Rail 422“您想要的更改被拒绝。错误”我将 Canvas URL 设置为我的站点 URL,并且我正在使用 Omniauth,所以我只是想知道我错过了什么.

4

2 回答 2

11

尝试删除

protect_from_forgery

在 application_controller 中,或

# you can disable csrf protection on controller-by-controller basis:
skip_before_filter :verify_authenticity_token

Facebook 使用 signed_request,您可以解码并使用它来验证请求是否确实来自 facebook,因此对于仅可通过 facebook 画布访问的应用程序来说,protect_from_forgery 是不必要的。

更多信息:Canvas Authentication & ActionController::RequestForgeryProtection

于 2011-01-22T00:11:33.903 回答
0

由于您在模型中设置了验证,因此可能会出现Facebook 的 omniauth 错误“您想要的更改被拒绝” 。我不得不为拥有一封唯一电子邮件的用户重构我的验证,当用户尝试使用相同的电子邮件登录 facebook 时,该验证不起作用。

看看你的日志。heroku logs -t

于 2014-02-27T05:21:56.007 回答