当我尝试从Google Analytics获取数据时,我收到错误
刷新OAuth2令牌时出错,消息:'{“error”: “unauthorized_client”,“error_description”:“未经授权的客户或 请求中的范围。“}'
我在https://console.developers.google.com/project创建项目,创建服务帐户并下载.p12密钥。同时在项目设置中启用“Analytics API”,但它不起作用。这是我的代码:
$service_account_name = '<Service Email>@developer.gserviceaccount.com';
$key_file_location = '<keyName>.p12';
$key = file_get_contents($key_file_location);
$cred = new Google_Auth_AssertionCredentials(
$service_account_name,
array(Google_Service_Analytics::ANALYTICS),
$key,
'notasecret',
'http://oauth.net/grant_type/jwt/1.0/bearer',
'<My email>'
);
$client->getAuth()->setAssertionCredentials($cred);
$service = new Google_Service_Analytics($client);
$result = $service->data_ga->get("ga:<profileID>", "yesterday", "today", "ga:pageviews");
print_r( $result);
我的项目有什么问题?请帮忙。
答案 0 :(得分:3)
您错过了最后一步,即允许您在域控制面板中访问您的应用程序。
https://developers.google.com/+/domains/authentication/delegation
您创建了服务帐户,现在需要委派/授权该应用程序。