У меня уже есть приложение для идентификации PayPal с соответствующими правами электронной почты в приложении, я пытаюсь получить электронную почту пользователей с помощью этого сценария:
<?php
$clientId = 'myclientid';
$clientSecret = 'myclientsecret';
//SEND CURL API REST REQUEST
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.paypal.com/v1/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, $clientId.":".$clientSecret);
curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
$result = curl_exec($ch);
if(empty($result))die("Error: No response.");
else
{
$json = json_decode($result);
}
$access_token = $json->access_token;
curl_close($ch);
///////////////////////////////////////////////////////////////////////
//GET CURL API REST REQUEST BACK
$cha = curl_init();
curl_setopt($cha, CURLOPT_URL, 'https://api.paypal.com/v1/oauth2/token/userinfo?schema=openid');
curl_setopt($cha, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($cha, CURLOPT_HTTPHEADER, array('Authorization: Bearer '. $access_token, 'Content-Type:
application/json'));
curl_setopt($cha, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_POSTFIELDS, "grant_type=client_credentials");
$returnresult = curl_exec($cha);
$data = json_decode($returnresult, true);
$http_code = curl_getinfo($cha, CURLINFO_HTTP_CODE);
if($http_code != 200) {
throw new Exception('Error : Failed to get user information');
}else{
//STORE RETREIVED VALUES HERE//////////////////
$paypaldata = implode(',',$data);
curl_close($cha);
if (!empty($paypaldata)) {
//Do stuff with $paypaldata
}
}
?>
Но ответ, сохраненный в var paypaldata, является данными продавца , Я ищу данные пользователей, которые вошли в систему. Я не уверен, что делаю неправильно, и да, я могу убедиться, что я не вошел в систему как продавец при выполнении тестов.