【发布时间】:2013-07-02 08:58:05
【问题描述】:
我正在使用 paypal 沙箱来测试我的付款流程。
我正在尝试对 paypal 返回的错误消息做出反应。在这种情况下,错误 10486:“此交易无法完成。请将您的客户重定向到 PayPal。”
[编辑] 在我的网页上,我显示了错误,并且用户有一个链接可以再次重定向到贝宝。 [/编辑]
我将用户重定向到贝宝,如本文所述 document.
if(isset($_GET['token'])){
$token = $_GET['token']
$url = "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=$token";
header('HTTP/1.1 301 Moved Permanently');
header('Location: ' . $url);
}
我正在使用相同的令牌。 一切都很好,但用户没有收到关于出了什么问题以及为什么他被重定向到贝宝的消息。
是否有人知道我是否做错了什么,或者是否需要更改帐户设置以在沙盒中显示错误,或者沙盒有错误并且不显示错误消息。
【问题讨论】:
-
你应该(几乎)总是在 header('Location:') 之后放置一个 exit()...仅仅因为浏览器被重定向,并不意味着 PHP 的其余部分没有被处理...此外,$_GET 中的任何内容都已为您进行了反编码...因此,当您将其包含在 url 中时,您需要再次 urlencode() 值(以防“token”变量包含一个字符如“&”)。
标签: php error-handling paypal-sandbox