javascript - 需要客户端 JavaScript 中的 PayPal PDT 示例代码

标签 javascript paypal

我是 PayPal 及其 PDT 的新手。我搜索了很多帖子,但它们需要 Node.jsPHP 来实现它。我两者都没有,但我只想从 PayPal PDT 获得一个简单的返回,告诉我的 download.html 购买已成功,以便我可以安全地向我的客户显示产品 key 并允许他们下载我的数字产品,否则我会在 JavaScript 中执行类似的操作:

If (purchaseFailed) {
   window.location.replace('/404.html');
}

我这样做的原因是为了防止直接访问我的 download.html 并在不通过 PayPal 付款的情况下泄露产品 key 。

我已启用 PayPal PDT 并指定了返回 URL,但我只是不知道如何编写 JavaScript 来从 PayPal 获取返回状态。除了“谢谢”消息、产品 key 和下载链接之外,我不需要向客户显示任何交易详细信息(但如果您可以展示一些获取交易详细信息的示例,例如产品代码和客户电子邮件地址,这也会有帮助)。有人可以帮我编写一些我的 Google Blogger HTML 可以执行的简单 JavaScript 吗?非常感谢!

最佳答案

PDT 完全不可靠,因为由于浏览器/网络崩溃或客户没有等待自动返回(有计时器)或没有点击返回(通常是没有点击返回的客人),因此永远无法保证会发生返回帐户必须出示收据并点击返回)。因此,PDT 仅适用于提供信息(例如,当买家返回时向他们显示感谢信息。)。

下载等业务逻辑绝对不应该依赖于实际发生的 PDT 返回。

相反,如果您需要来自 PayPal 的可靠付款完成通知,则应监听异步 IPN 或较新的 Webhook 之一 - 或者,应将集成更改为更强大的同步服务器端集成,例如像这样的模式:https://developer.paypal.com/demo/checkout/#/pattern/server ,出于通知目的,总是会立即对付款捕获做出 API 响应。

当然,Blogger 的 HTML/JS 不提供任何必要的监听或 API 功能。

关于javascript - 需要客户端 JavaScript 中的 PayPal PDT 示例代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60397691/

相关文章:

javascript - 有什么方法可以匹配某个字符之前或之后的模式吗?

javascript - 如何使用 PayPal 付款按钮 JavaScript API?

objective-c - Paypal 状态待处理

通过 Braintree SDK 的 Paypal Express Checkout 突然失败(缺少服务商 REST API 应用程序?)

ios - curl 到 AFNetworking?

iphone - 如何在 iPhone App 中集成 Mobile Express CheckOut Paypal

javascript - Jquery、ajax : Clicking on a button and getting the value of the cell next to it on the same row

javascript - 如何获取连接的mxgraph之间的父子关系

javascript - Firefox 或 JavaScript,计算 DOM

javascript - FancyBox 3 在链接点击时加载 iframe 不起作用