我正在实现一个服务器端脚本,应该使用Analytics DailyUpload API
我在我的项目https://console.developers.google.com/project中添加了一个“服务器应用程序密钥”。
当我试图使用php客户端访问API时,总是会出现401错误。
set_include_path("../src/" . PATH_SEPARATOR . get_include_path());
require_once 'Google/Client.php';
require_once 'Google/Service/Analytics.php';
$client = new Google_Client();
$client->setApplicationName("AutoDailyUpload");
$apiKey = "MY_API_KEY";
$client->setDeveloperKey($apiKey);
$analytics = new Google_Service_Analytics($client);
try {
$accounts = $analytics->management_accounts->listManagementAccounts();
if (count($accounts->getItems()) > 0) {
$items = $accounts->getItems();
$firstAccountId = $items[0]->getId();
$webproperties = $analytics->management_webproperties->listManagementWebproperties($firstAccountId);
if (count($webproperties->getItems()) > 0) {
$items = $webproperties->getItems();
$firstWebpropertyId = $items[0]->getId();
$profiles = $analytics->management_profiles->listManagementProfiles($firstAccountId, $firstWebpropertyId);
if (count($profiles->getItems()) > 0) {
$items = $profiles->getItems();
echo $items[0]->getId();
} else {
throw new Exception('No views (profiles) found for this user.');
}
} else {
throw new Exception('No webproperties found for this user.');
}
} else {
throw new Exception('No accounts found for this user.');
}
} catch (Exception $e) {
echo 'Error : ' . $e->getMessage();
}结果:
{"error":{"errors":[{"domain":"global","reason":"required","message":"Login Required","locationType":"header","location":"Authorization"}],"code":401,"message":"Login Required"}}我做错什么了吗?
发布于 2014-07-16 16:11:11
https://stackoverflow.com/questions/24627922
复制相似问题