使用PHP的v4 API,我注意到零结果不会在结果中显示为行。
在使用ga:avgSessionDuration指标和ga:date维度为1周的时间段内,平均会话持续时间为0的天数不会返回数据,因此我没有整整一周的图表。
根据文档,v3将返回0行,并且在查询资源管理器中,零值显示,因为它们使用的是v3 API。但似乎v4没有,至少没有其他配置,除非我错过了什么。
有没有其他人遇到过这个,有解决方案吗?
答案 0 :(得分:1)
V3 include-empty-rows
parameter对应于V4中的includeEmptyRows
field。 V3参数默认为 true ,而在V4中,字段默认为 false 。如果您没有在V3中设置的值,则需要在V4中将值设置为true。
以下示例显示如何将includeEmptyRows
设置为True:
// Create the Metrics object.
$avgsessionduration = new Google_Service_Analyticsreporting_Metric();
$avgsessionduration->setExpression("ga:avgSessionDuration");
//Create the Dimensions object.
$date = new Google_Service_Analyticsreporting_Dimension();
$date->setName("ga:date");
// Create the ReportRequest object.
$request = new Google_Service_Analyticsreporting_ReportRequest();
$request->setViewId("XXXX");
$request->setDimensions(array($date));
$request->setMetrics(array($avgsessionduration));
$request->setIncludeEmptyRows(true); // <-- Ensure this value to be true.
// Construct the request body.
$body = new Google_Service_Analyticsreporting_GetReportsRequest();
$body->setReportRequests( array( $request) );
return $analyticsreporting->reports->batchGet( $body );
{
"reportRequests":[
{
"viewId":"XXXX",
"metrics":[{"expression":"ga:avgSessionDuration"}],
"dimensions": [{"name":"ga:date"}],
"includeEmptyRows": "true"
}]
}
有关从Core Reporting API V3迁移到Analytics Reporting API V4的详细信息,请参阅Migration guide。