为什么 Google Analytics API 正在占用我的过滤器查询中的“\”?

Why the Google Analytics API is eating the "\" in my filter query?

我正在玩 Google 分析 API 并且发现它非常有趣。但是今天我遇到了一个无法解决的问题

我正在发送这样的过滤器:

'filters':'ga:pagePath=~^/q-\d+/\d+$'

它在 Query Explorer 中运行良好,但不适用于我的代码。

经过一些测试,我发现查询在发送时是错误的。这是来自我的 Chrome 调试工具的 "Network" 面板:

如图所示,\d 变成了 d,我想这就是数据未正确显示的原因。

我该如何解决这个问题?

这是我的代码:

var o ={
    'ids': 'ga:' + profileId,
    'start-date': $('#startdate').val(),
    'end-date': $('#enddate').val(),
    'metrics': 'ga:pageviews,ga:uniquePageviews',
    'dimensions': 'ga:pagePath',
    'sort':'ga:pagePath',
    'filters':'ga:pagePath=~^/q-\d+/\d+$'
  };
gapi.client.analytics.data.ga.get(o)
.then(function(response) {

谢谢,

您需要转义反斜杠符号:

'filters':'ga:pagePath=~^/q-\d+/\d+$'

这很容易检查:

console.log('ga:pagePath=~^/q-\d+/\d+$');
console.log('ga:pagePath=~^/q-\d+/\d+$');

如果您在 GA 中使用自定义事件,您可能可以看看 http://mixpanel.com or http://www.devmetrics.io,它们提供了更好的事件模型和面向事件的 API / UI.