所以,由于以下指南,我有PayPal的快速结账系统基本正常工作:
http://www.sanwebe.com/2012/07/paypal-expresscheckout-with-php
但现在我想整合上下文体验,但文档再次完全无用:
https://developer.paypal.com/docs/classic/express-checkout/in-context/integration/
所以,我会根据我应该采取的步骤分解我的问题:
1. Update your redirect URL to: https://www.paypal.com/checkoutnow/
重定向网址的含义是什么?这是返回还是取消网址?都?都不是? API端点可能吗?对于我应该替换或在哪里,没有任何背景。
我需要在我的网站上添加以下代码:
<form id="myContainer" method="post" action="/checkout"></form>
<script>
window.paypalCheckoutReady = function () {
paypal.checkout.setup('<Your-Merchant-ID>', {
environment: 'sandbox',
container: 'myContainer'
});
};
</script>
<script src="//www.paypalobjects.com/api/checkout.js" async></script>
足够公平。但是action =“/ checkout”应该是什么?它本身不起作用,所以我应该把它放在那里?一个URL?这应该是我服务器上的文件吗?如果是这样,我需要在该文件中做什么?它想要什么?
我想这些是我到目前为止遇到的主要问题。我很惊讶,关于如何实际设置它的信息很少。
答案 0 :(得分:3)
In-Context几乎更多&#34;前端&#34;当天结束时的更改(到现有&#34;重定向&#34; Express Checkout集成)。所以,那说:
&#34;重定向&#34;他们指的是Paypal 的网址,您目前在获取ec token
后重定向到
this sample is probably better正如你所看到的那样(第51行)
var url = paypal.checkout.urlPrefix +token;
如图所示,您获得的token
(就像您目前所做的那样)会附加到&#34;新的重定向网址&#34; - 如果您在浏览器控制台中查看该paypal.checkout.urlPrefix
变量,那么您将看到它的值是&#34;新的重定向网址&#34; (沙箱):
https://www.sandbox.paypal.com/checkoutnow?token=
所以/checkout
只是一个示例,向您展示如何调用获得EC token
的(现有)后端EC实现,此时,而不是自己进行HTTP重定向,将其传递给前端,以便可以通过In-Context流程处理。
... H个
答案 1 :(得分:1)
在您现有的快速结账代码上试试这个,确实没有什么需要篡改或修改,所以这是一个纯粹的&#34;前端&#34;变化
<script>
(function(d, s, id) {
var js, ref = d.getElementsByTagName(s)[0];
if (!d.getElementById(id)) {
js = d.createElement(s);
js.id = id;
js.async = true;
js.src = "//www.paypalobjects.com/js/external/paypal.v1.js";
ref.parentNode.insertBefore(js, ref);
}
}(document, "script", "paypal-js"));
</script>
&#13;
<input type="image" data-paypal-button="true" data-paypal-sandbox="true" src="https://www.paypalobjects.com/webstatic/en_US/i/buttons/checkout-logo-large.png" alt="Check out with PayPal" />
&#13;
这与developer.paypal.com上的说明略有不同,作为一种替代解决方法,可以省去麻烦但不推荐的解决方案