我正在使用此示例https://developers.google.com/analytics/devguides/reporting/core/v4/quickstart/web-js 我想在gapi.client.request的主体中插入过滤器。
这是我的示例代码
function queryReports() {
gapi.client.request({
path: '/v4/reports:batchGet',
root: 'https://analyticsreporting.googleapis.com/',
method: 'POST',
body: {
reportRequests: [
{
viewId: VIEW_ID,
dateRanges: [
{
startDate: '7daysAgo',
endDate: 'yesterday'
}
],
metrics: [
{
expression: 'ga:pageviews'
}
],
dimensions: [
{
name: 'ga:date'
}
]
// filters: [
// {
// name: 'ga:pagePath=~/mypath/'
// }
// ]
}
]
}
}).then(displayResults, console.error.bind(console));
}
reportRequest中过滤器的格式是什么?
答案 0 :(得分:0)
根据the documentation,没有名为filters
的字段。但是,有一个filtersExpression
字符串字段:
维度或指标筛选器,用于限制为请求返回的数据。要使用
filtersExpression
,请提供要过滤的维度或指标,然后是过滤器表达式。例如,以下表达式选择以Firefox开头的ga:browser
维度;的ga:browser=~^Firefox
即可。有关维度和指标过滤器的详细信息,请参阅Filters reference。
因此,您应该可以将以下内容添加到您的请求正文中:
filtersExpression: 'ga:pagePath=~/mypath/'
答案 1 :(得分:0)
此解决方案适用于我的项目,您希望给出您选择的dimension_name:
function queryReports() {
gapi.client.request({
path: '/v4/reports:batchGet',
root: 'https://analyticsreporting.googleapis.com/',
method: 'POST',
body: {
reportRequests: [
{
viewId: VIEW_ID,
dateRanges: [
{
startDate: '7daysAgo',
endDate: 'yesterday'
}
],
metrics: [
{
expression: 'ga:pageviews'
}
],
dimensions: [
{
name: 'ga:date'
}
],
dimensionFilterClauses: [{
filters: [{
dimension_name: 'ga:browser',
operator: 'EXACT',
expressions: ["Firefox"]
}]
}]
}
]
}
}).then(displayResults, console.error.bind(console));
}
答案 2 :(得分:-1)
"filtersExpression":"ga:pagePath=~/mypath/"
上面的内容会很有魅力。请参考此link。