安全标头无效
Posted
技术标签:
【中文标题】安全标头无效【英文标题】:security header is not valid 【发布时间】:2015-11-05 21:34:11 【问题描述】:我正在尝试在paypal
中创建recurring profile
这是我的代码
<?php
$qs = "";
$username = "xxx";
$password = "xxx";
$signature = "xxx";
$qs = "USER=".$username;
$qs .= "&PWD=".$password;
$qs .= "&SIGNATURE=".$signature;
$qs .= "&METHOD=CreateRecurringPaymentsProfile";
$qs .= "&VERSION=86";
$qs .= "&PAYERID=1";
$qs .= "&PROFILESTARTDATE=2015-08-13T";
$qs .= "&DESC=recurrning payment";
$qs .= "&BILLINGPERIOD=Month";
$qs .= "&BILLINGFREQUENCY=1";
$qs .= "&AMT=10";
$qs .= "&CURRENCYCODE=AUD";
$qs .= "&COUNTRYCODE=AU";
$qs .= "&MAXFAILEDPAYMENTS=3";
header('location:https://api-3t.sandbox.paypal.com/nvp?'.$qs);
?>
从上面的代码,我得到了错误security header is not valid
谁能帮帮我
【问题讨论】:
***.com/questions/23261766/… 【参考方案1】:在 URL 中使用 %20
而不是 space (' ')
可能会帮助您解决错误[虽然我不确定]:
<?php
$qs = "";
$username = "xxx";
$password = "xxx";
$signature = "xxx";
$qs = "USER=".$username;
$qs .= "&PWD=".$password;
$qs .= "&SIGNATURE=".$signature;
$qs .= "&METHOD=CreateRecurringPaymentsProfile";
$qs .= "&VERSION=86";
$qs .= "&PAYERID=1";
$qs .= "&PROFILESTARTDATE=2015-08-13T";
$qs .= "&DESC=recurrning%20payment";//replace the space
$qs .= "&BILLINGPERIOD=Month";
$qs .= "&BILLINGFREQUENCY=1";
$qs .= "&AMT=10";
$qs .= "&CURRENCYCODE=AUD";
$qs .= "&COUNTRYCODE=AU";
$qs .= "&MAXFAILEDPAYMENTS=3";
header('location:https://api-3t.sandbox.paypal.com/nvp?'.$qs);
?>
【讨论】:
检查您的 $username、$password 和 $signature 值以及执行此操作的正确手册。您也可以查看this、this 和this。 paypal 企业账户的 header('location:') 中设置哪个 url 请访问我之前评论中的建议链接。以上是关于安全标头无效的主要内容,如果未能解决你的问题,请参考以下文章