Google Analytics API - 与 Symfony2 集成
Posted
技术标签:
【中文标题】Google Analytics API - 与 Symfony2 集成【英文标题】:Google Analytics API - Integration With Symfony2 【发布时间】:2015-04-07 11:25:52 【问题描述】:我正在尝试通过 OAuth2 访问 Google Analytics API。
我做了什么:
打开开发者控制台 > APIs and Auth > Credentials
创建新的客户端 ID
生成 p12 密钥
在服务器上复制密钥
打开谷歌分析页面 > admin > Account > User Management
从生成的客户端 ID 添加电子邮件,例如:xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com
授予此电子邮件阅读和分析权限
然后当我返回开发者控制台时 > 权限。新电子邮件将添加到具有编辑权限的服务帐户
重新检查 Google Analytics 是否已启用并且数据是否正在输入。
现在我已经安装了 widop/google-analytics-bundle 并配置了包:
widop_google_analytics:
client_id: "xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com"
profile_id: "ga:12345678"
private_key_file: "mykey.p12"
http_adapter: "widop_http_adapter.curl"
我尝试创建的查询是:
$profileId = 'ga:12345678';
$query = new Query($profileId);
$query->setStartDate(new \DateTime('-2months'));
$query->setEndDate(new \DateTime());
$query->setMetrics(array('ga:visits' ,'ga:bounces'));
$query->setDimensions(array('ga:browser', 'ga:city'));
$query->setSorts(array('ga:country', 'ga:browser'));
$query->setFilters(array('ga:browser=~^Firefox'));
$query->setSegment('gaid::10');
$query->setStartIndex(1);
$query->setMaxResults(10000);
$query->setPrettyPrint(false);
$query->setCallback(null);
$clientId = 'xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com';
$privateKeyFile = 'mykey.p12';
$httpAdapter = new CurlHttpAdapter();
$client = new Client($clientId, $privateKeyFile, $httpAdapter);
$token = $client->getAccessToken();
$service = new Service($client);
$response = $service->query($query);
return $response;
作为响应,我收到此错误:
User does not have sufficient permissions for this profile.
当我打开开发者控制台 > 概览 > 1 小时(选项卡)
我注意到请求正在进入。
从所有这些 - 我假设身份验证和查询都可以,但用户无权获取任何奇怪的数据,因为我已授予读取和分析权限 xxxxxxxx-xxxxxxxxxxxxxxx@developer.gserviceaccount.com
该异常的原因是什么?
【问题讨论】:
【参考方案1】:我不知道你是否已经解决了这个问题。 我的解决方案是在分析帐户上使用视图 ID 而不是帐户 ID。 视图 ID 位于设置的第三列,在 Google Analytics(分析)管理面板上。
对不起我的英语。
【讨论】:
以上是关于Google Analytics API - 与 Symfony2 集成的主要内容,如果未能解决你的问题,请参考以下文章
Google Analytics API - 与 Symfony2 集成
Google Analytics Reporting Api - PHP:添加用户帐户