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

pic*_*rdo 2 paypal ruby-on-rails paypal-ipn

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

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

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

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

它使用的authenticity_token是我在初始阶段通过时重定向到Paypal的那个.显然,这不是一个有效的选择.但是当我把它留空时,它会抛出同样的错误.

我想知道我是否可以禁用authenticity_token要求或以某种方式绕过它,以便当Paypal发布到我的应用程序时它可以没有任何错误.

Kel*_*end 6

听起来像csrf导致了这个问题,将skip_before_filter:verify_authenticity_token添加到控制器应允许它处理.

如果您使用该authenticity_token作为安全措施,则在控制器中手动存储并检查它.