2013-11-27 46 views
1

我從這個頁面發送用戶ID和密碼:https://www.paypal.com/us/cgi-bin/webscr?cmd=_profile-api-signature580001無效的請求:{0}貝寶(PHP)

而且將APPID我在Android應用程序使用它來創建付款ID:https://apps.paypal.com/user/my-account/applications

我使用瞭如下功能:

function verify_paypal($payKey, $appID) 
{ 
    global $payPalUser_Id, $payPalPassword, $payPalSig; 
$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:XML', 
'X-PAYPAL-APPLICATION-ID:'.$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); 
return $adaptiveResponse; 
} 

但它給這個錯誤:

<?xml version='1.0' encoding='UTF-8'?> 
<ns3:FaultMessage xmlns:ns3="http://svcs.paypal.com/types/common" xmlns:ns2="http://svcs.paypal.com/types/ap"> 
<responseEnvelope> 
<timestamp>2013-11-27T14:58:07.463-08:00</timestamp> 
<ack>Failure</ack> 
<correlationId>d97c635f935b3</correlationId> 
<build>7935900</build> 
</responseEnvelope> 
<error> 
<errorId>580001</errorId> 
<domain>PLATFORM</domain> 
<subdomain>Application</subdomain> 
<severity>Error</severity> 
<category>Application</category> 
<message>Invalid request: {0}</message> 
</error> 
</ns3:FaultMessage> 

回答

5

請求數據格式應爲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 
);