Php &引用;errorId";:&引用;560022“&引用;“讯息”:&引用;X-PAYPAL-APPLICATION-ID标头包含无效值“&引用;参数";:[“X-PAYPAL-APPLICATION-ID”]

Php &引用;errorId";:&引用;560022“&引用;“讯息”:&引用;X-PAYPAL-APPLICATION-ID标头包含无效值“&引用;参数";:[“X-PAYPAL-APPLICATION-ID”],php,curl,paypal,Php,Curl,Paypal,我没有使用sandbox端点(我也用sandbox应用程序id尝试过,但这给了我错误的凭据错误),我正在尝试验证付款 我在PHP中使用以下函数: function verify_paypal($payKey) { global $payPalUser_Is, $payPalPassword, $payPalSig, $appID; $headerArray = array( 'X-PAYPAL-SECURITY-USERID:'.$payPalUser_Id, 'X-PAYPAL-SECUR

我没有使用sandbox端点(我也用sandbox应用程序id尝试过,但这给了我错误的凭据错误),我正在尝试验证付款

我在PHP中使用以下函数:

function verify_paypal($payKey)
{
  global $payPalUser_Is, $payPalPassword, $payPalSig, $appID;
$headerArray = array(
'X-PAYPAL-SECURITY-USERID:'.$payPalUser_Id,
'X-PAYPAL-SECURITY-PASSWORD:'.$payPalPassword,
'X-PAYPAL-SECURITY-SIGNATURE:'.$payPalSig,
'X-PAYPAL-REQUEST-DATA-FORMAT:JSON',
'X-PAYPAL-RESPONSE-DATA-FORMAT:JSON',
'X-PAYPAL-APPLICATION-ID:'.$appID
);
echo "$headerArray, $appID";
$url="https://svcs.paypal.com/AdaptivePayments/PaymentDetails?payKey={$payKey}&requestEnvelope.errorLanguage=en_US";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, $headerArray);
$adaptiveResponse = curl_exec($ch);
curl_close($ch);

echo $adaptiveResponse;
//return true or false, still got to handle the response
};

但它给出的错误是应用程序id不正确。我使用相同的ID处理来自android应用程序的付款,没有问题。有人知道我应该使用哪个ID吗?

请求数据应该是NV:

$headerArray = array(
'X-PAYPAL-SECURITY-USERID:'.$payPalUser_Id,
'X-PAYPAL-SECURITY-PASSWORD:'.$payPalPassword,
'X-PAYPAL-SECURITY-SIGNATURE:'.$payPalSig,
'X-PAYPAL-REQUEST-DATA-FORMAT:NV',
'X-PAYPAL-RESPONSE-DATA-FORMAT:JSON',
'X-PAYPAL-APPLICATION-ID:'.$appID
);

是否检查了确切的HTTP请求头?有空格吗?我越来越接近这个问题,不知道发生了什么变化,但当我将应用程序id移到签名下面时(我怀疑是这样),它给了我另一个错误:无效请求:{0}。我正在调查这件事。