2

所以,我有一个具有全局 IP 地址的路由器(是的,我知道它不适用于本地地址,例如 192.168.xx.xx)地址,并且我已经三次检查它是否可以从外部访问。

我目前在沙盒环境中工作。

我在隐藏的 :encrypted 字段中拥有所有付款选项(请参阅相应的 railscast),这些选项将发布到 PayPal。在 PayPal 方面,一切都运行得非常顺利——我完成了付款等等,但从未调用过 IPN。我的操作根本没有被触发的日志条目(没有错误/警告或任何东西),但至少应该有一些东西。

我尝试通过两种方式传递 notify_url:1)在我的购买模型中的选项哈希中,然后被加密到 :encrypted 字段;:notify_url => notify_url2) notify_url 明确作为单独的隐藏字段 => <%= hidden_field_tag :notify_url, notify_url %>3) pts 1 和 2 的组合。

但这是没有希望的——似乎没有任何效果。:(

我还尝试在我的沙盒业务帐户设置中启用 IPN,但这也没有任何帮助。

在这种情况下我该怎么办?

PS 我也试过 IPN 模拟器服务,它似乎工作。那有什么问题呢?

4

2 回答 2

2

经过反复试验,我终于找到了解决方案!

千万不要,我再说一遍,千万不要使用“_cart”作为你的付款命令,如果你想使用:1)IPN,2)PDT 验证。改用“_xclick”!

这解决了我的问题,现在它们都可以正常工作了!

希望这对某人有用!

于 2012-10-25T06:15:10.497 回答
1

就我而言,rails root_path 也有几个问题,所以我不得不使用:

(:notify_url => MyApp::Application.config.domain_url + Rails.application.routes.url_helpers.my_ipn_path) #

确保 notify_url 格式正确,将其链接到值哈希(如果您使用类似于此 railcast http://railscasts.com/episodes/141-paypal-basics的内容)。

我无法让它在本地环境中工作,所以我必须直接在我的暂存环境中测试它,检查日志:)

希望能帮助到你!:)

于 2012-10-22T15:02:04.920 回答