值必须匹配以下正则表达式:'\d+' 错误

Values must match the following regular expression: '\d+' error

我正在尝试使用 Google Analytics API 管理构建一个小型 Google 应用程序脚本,以将 Google Analytics 过滤器从一个视图复制到另一个视图。

我有以下 python 片段,我想将其翻译成 Google 应用脚本:

# This request creates a new profile filter link.
try:
  analytics.management().profileFilterLinks().insert(
      accountId='123456',
      webPropertyId='UA-123456-1',
      profileId='7654321',
      body={
          'filterRef': {
              'id': '1223334444'
          }
      }
  ).execute()

我可以像这样获取配置文件过滤器列表 link:

var filterLinks = Analytics.Management.ProfileFilterLinks.list(
      '12345678','UA-98765432-1','111111111')

我试图为插入方法复制类似的东西,但它不起作用:

var body = JSON.stringify({
         'filterRef': {
             'id': '84029058'
}});

var up = Analytics.Management.ProfileFilterLinks.insert('12345678','UA-98765432-1','111111111',body)

有什么想法吗?

这个答案怎么样?

修改点:

  • 在高级 Google 服务中,Analytics.Management.ProfileFilterLinks.insert() 的参数是 resource, accountId, webPropertyId, profileId
  • 在您的 python 脚本中,您使用以下值作为 analytics.management().profileFilterLinks().insert() 的参数。

    accountId='123456',
    webPropertyId='UA-123456-1',
    profileId='7654321',
    body={'filterRef': {'id': '1223334444'}}
    
    • 在这种情况下,resource, accountId, webPropertyId, profileId分别是body, accountId, webPropertyId, profileId

那么下面的修改呢?

修改后的脚本:

var resource = {filterRef: {id: '1223334444'}};
var accountId = '123456';
var webPropertyId = 'UA-123456-1';
var profileId = '7654321';
var up = Analytics.Management.ProfileFilterLinks.insert(resource, accountId, webPropertyId, profileId);

注:

  • 请再次确认resource, accountId, webPropertyId, profileId的值是否正确。

参考: