Curl正在尝试获取属性';访问令牌';非对象
我在一个使用paypal checkout的电子商务网站上工作,一切正常,但为了保存交易,我有一个PHP类,用于处理paypal API相关操作,但当我运行代码时,我得到以下错误:Curl正在尝试获取属性';访问令牌';非对象,curl,paypal,Curl,Paypal,我在一个使用paypal checkout的电子商务网站上工作,一切正常,但为了保存交易,我有一个PHP类,用于处理paypal API相关操作,但当我运行代码时,我得到以下错误: Trying to get property 'access_token' of non-object in Paypalclass.php on line 29 请协助,这是我的代码: class Paypal{ public $paypalEnv = 'production'; p
Trying to get property 'access_token' of non-object in Paypalclass.php on line 29
请协助,这是我的代码:
class Paypal{
public $paypalEnv = 'production';
public $paypalURL = 'https://www.paypalobjects.com/api/checkout.js';//https://api.sandbox.paypal.com/v1/
public $paypalClientID = '##id##';
private $paypalSecret = '##secret##';
public function validate($paymentID, $paymentToken, $payerID, $productID){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $this->paypalURL.'oauth2/token');
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_USERPWD, $this->paypalClientID.":".$this->paypalSecret);
curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
$response = curl_exec($ch);
curl_close($ch);
if(empty($response)){
return false;
}else{
$jsonData = json_decode($response);
$curl = curl_init($this->paypalURL.'payments/payment/'.$paymentID);
curl_setopt($curl, CURLOPT_POST, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
'Authorization: Bearer ' . $jsonData->access_token,
'Accept: application/json',
'Content-Type: application/xml'
));
$response = curl_exec($curl);
curl_close($curl);
// Transaction data
$result = json_decode($response);
return $result;
}
}
}
那么,您试图访问的属性是什么?显然,您没有从PayPal收到任何信息,或者
$response
无法解码。检查您的凭据和卷曲错误。这里需要直接调试。那么,您试图访问的属性是什么?显然,您没有从PayPal收到任何信息,或者$response
无法解码。检查您的凭据和卷曲错误。这里需要直接调试。