4 часа пытались устранить эту проблему, она всегда возвращается с (403) У пользователя нет учетной записи AdSense, я пытаюсь получить отчет о моем adsense на моем веб-сайте,
Ps: это соединение между серверами
require_once realpath(dirname(__FILE__) . '/../src/Google/autoload.php');
require_once '../src/Google/Client.php';
require_once '../src/Google/Service/AdSense.php';
$client_email = '[email protected]';
$private_key = file_get_contents('adsense-xxxxx.p12');
$scopes = array('https://www.googleapis.com/auth/adsense.readonly');
$credentials = new Google_Auth_AssertionCredentials(
$client_email,
$scopes,
$private_key,
'notasecret'
);
$client = new Google_Client();
$client->setAssertionCredentials($credentials);
if ($client->getAuth()->isAccessTokenExpired()) {
$client->getAuth()->refreshTokenWithAssertion();
}
$service = new Google_Service_AdSense($client);
Журнал ошибок:
Неустранимая ошибка PHP: необработанное исключение «Google_Service_Exception» с сообщением «Ошибка вызова GET https://www.googleapis.com/adsense/v1.4/accounts?maxResults=50: (403) У пользователя нет учетной записи AdSense. ‘ в /var/www/geturl/ad/src/Google/Http/REST.php:110
#0 /var/www/geturl/ad/src/Google/Http/REST.php(62): Google_Http_REST::decodeHttpResponse(Object(Google_Http_Request), Object(Google_Client))
#1 [internal function]: Google_Http_REST::doExecute(Object(Google_Client), Object(Google_Http_Request))
#2 /var/www/geturl/ad/src/Google/Task/Runner.php(174): call_user_func_array(Array, Array)
#3 /var/www/geturl/ad/src/Google/Http/REST.php(46): Google_Task_Runner->run()
#4 /var/www/geturl/ad/src/Google/Client.php(593): Google_Http_REST::execute(Object(Google_Client), Object(Google_Http_Request))
#5 /var/www/geturl/ad/src/Google/Service/Resource.php(240): Google_Client->execute(Object(Google_Http_Request))
#6 /var/www/geturl/ad/src/Google/Service/AdSense.php(1106): Google_Service_Resource->call('list', Array, 'Google_Servic in /var/www/geturl/ad/src/Google/Http/REST.php on line 110
Вы ждали 24 часа после включения API?
Попробуйте проверить учетную запись, чтобы убедиться, что она работает вне кода. Используйте проводник API:
https://developers.google.com/adsense/management/v1.4/reference/accounts/list#try-it
Проверьте подлинность и попробуйте получить список учетных записей.
Если это работает, убедитесь, что вы подключаетесь к API с использованием этих учетных данных.
Редактировать:
Возможно, один из них может помочь:
https://github.com/googleads/googleads-adsense-examples/tree/master/php-clientlib-1.x/v1.x
https://developers.google.com/adsense/management/libraries
PHP get adsense earnings and reports
Других решений пока нет …