ruby-on-rails - 如何在 Rails 中实现 Paypal 回调? (获取 InvalidAuthenticityToken 错误)

标签 ruby-on-rails paypal paypal-ipn

编辑:这是一个主要 Rails 问题

我正在尝试实现即时付款通知 API (IPN),如果 Paypal 付款通过,它会调用您的服务器。我现在看到的问题是当 Paypal IPN 访问我指定的 url 时,它失败并出现以下错误:

> Started POST "/checkout/complete?id=1&amount=3445&authenticity_token=NkOwgJ1H2TEmwO6T+hROu96kWr4yGcTzHD6MbTswgyU="

> ActionController::InvalidAuthenticityToken (ActionController::InvalidAuthenticityToken):

它使用的 authenticity_token 是我在初始阶段重定向到 Paypal 时传递的那个。显然,这不是一个有效的选择。但是,当我将其留空时,它会抛出相同的错误。

我想知道我是否可以禁用 authenticity_token 要求或以某种方式绕过它,以便当 Paypal 发布到我的应用程序时它可以顺利通过。

最佳答案

听起来像是 csrf 导致了这个问题,将 skip_before_filter :verify_authenticity_token 添加到您的 Controller 应该允许它处理。

如果您使用该 authenticity_token 作为安全措施,请在您的 Controller 中手动存储和检查它。

关于ruby-on-rails - 如何在 Rails 中实现 Paypal 回调? (获取 InvalidAuthenticityToken 错误),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6026072/

相关文章:

ruby-on-rails - Ngrok 传出请求

Javascript:从 Ruby on Rails 生成的按钮访问 'action' 属性

ruby-on-rails - ruby rails : Functional Testing: POST does not send raw XML data

python - 在 PayPal 的 REST API 中执行付款后,有时我收不到回复电子邮件

javascript - Parse.com 和 Paypal 整合

php - 使用 Codeigniter,如何向其他开发人员 stash Paypal 凭据?

javascript - 您在 Rails 应用程序中使用什么 Web UI 工具包?

php - Paypal IPN 取消成员(member)资格 PHP

php - PayPal IPN 不断返回 'INVALID' 代码,无论我做什么

paypal - 已验证的 PayPal IPN 响应仅以美元货币表示