贝宝购物车变量传递的概念问题
Posted
技术标签:
【中文标题】贝宝购物车变量传递的概念问题【英文标题】:Conceptual issue with paypal shopping cart variable pass-through 【发布时间】:2013-08-04 21:51:33 【问题描述】:拥有由贝宝创建的购物车按钮,我希望在“成功”页面上能够读取所购买的产品编号。例如,如果客户将“Product001”和“Product033”添加到购物车,并且交易成功完成,我希望贝宝将这些数字传回给我,并且我想知道如何使用 php(或任何其他方式)以便我可以告诉我的 mysql 数据库这些商品是由当时通过 php 会话登录的客户购买的。我已经阅读了很多关于这个问题的内容,但是有没有一种简单的方法可以读取在贝宝按钮向导中创建的变量或设置我自己的变量以确保它们被读取并因此提交到成功页面?
【问题讨论】:
【参考方案1】:我建议您查看 get registration data on paypal pay now 和其他引用 PayPal IPN 的答案,因为这听起来正是您正在寻找的。
通过在您的终端上使用 PayPal IPN(如果您愿意,还可以使用 XHR),您可以在发布可下载文件/授予对您的服务的访问权限/运送物品等之前从 PayPal 提取付款确认。
【讨论】:
这会将我带到developer.paypal.com/webapps/developer/docs/classic/ipn/…,它告诉我是什么而不是如何。 Paypal 如何将信息传回,我如何要求它进行验证,我如何检索信息(是否是简单的 $_REQUEST[''] 等)?你能给我一些见解吗? 左侧导航,在“即时付款通知”标题下包含更多信息,包括“如何”。 IE。 developer.paypal.com/webapps/developer/docs/classic/ipn/… 好吧,我很尴尬。我自己应该看到的。最后一个问题,如果可以的话。 . .据我了解,贝宝可以重定向到成功页面而无需任何这些,但是一旦您设置了 ipn 页面,它就会重定向到该页面上的侦听器脚本。那个监听器脚本需要完整的 Paypal APK 才能运行?这是将简单的自定义字段传递给贝宝并传回的唯一方法吗? 不,IPN 与返回页面分开工作。返回页面是您的买家在付款结束时返回的页面,但这并不一定意味着所有买家都会返回该页面(他们可能会关闭浏览器,在访问您的成功页面时看到超时等) -所以我会推荐一个异步解决方案,它记录事务状态,而不管客户端发生了什么。因此,IPN。是的,你可以在没有它的情况下构建一个工作系统,但它的可靠性会降低。 IPN 不需要 APK 或 SDK 即可运行,不。只是一个接受 POST 数据并对其进行处理的文件。 从技术上讲,IPN 只是一个 HTTP POST 到您端上的一个带有特定负载的文件,您将其发送回 PayPal 一次以验证其真实性,之后您可以处理其内容并更新/插入根据需要自行订购(或向买家发送自定义电子邮件)。如果您在“立即购买”按钮(或用于 API 调用的自定义)中传递<input type="hidden" name="custom" value="somecustomvaluehere">
,则此数据也会在 IPN HTTP POST 有效负载内的 custom
键中返回。希望这能解决问题。以上是关于贝宝购物车变量传递的概念问题的主要内容,如果未能解决你的问题,请参考以下文章