从Google电子表格调用Google AnalyticsAPI时出现“需要登录”错误

时间:2014-01-06 14:56:54

标签: google-analytics google-apps-script google-sheets google-analytics-api google-spreadsheet-api

我使用Google脚本按Google Analytics数据填写Google电子表格。
问题:当我从电子表格文件中调用error: Login Required时,我收到=getCountOfNewUsers(B1,B2)
注意:当我从谷歌脚本项目运行runTest()时,一切正常。 仅供参考:我已经关注了this教程。

function runTest() {
  try {
    var results = getCountOfNewUsers(new Date(), new Date());
    Logger.log(results.totalsForAllResults["ga:newVisits"]);

  } catch(error) {
    Logger.log(error.message);
  }
}

function getCountOfNewUsers(date_from, date_till) {
  date_from = Utilities.formatDate(date_from, 'GMT', 'yyyy-MM-dd');
  date_till = Utilities.formatDate(date_till, 'GMT', 'yyyy-MM-dd');      
  var tableId = 'ga:*****';

  // Make a request to the API.
  var results = Analytics.Data.Ga.get(tableId, date_from, date_till, 'ga:newVisits', {});

  if (results.getRows()) {
    return results;    
  } else {
    throw new Error('No views (profiles) found');
  }
}

2 个答案:

答案 0 :(得分:1)

这不是您问题的解决方案,但如果您感兴趣,它会指导您轻松更好地解决您的问题!,您可以在一小时内轻松设置此解决方案!

<强>详细信息:

优于使用Diligent Study编写我们自己的脚本并使Google脚本通过Google Analytics数据填写Google电子表格我使用 Google Analytics Report Automation (Magic Script)

  • 这个Magic Sc​​ript允许您简化此过程并实现它 轻松获取您想要的数据,以便您可以专注于分析和 报告。
  • 自定义API仪表板 - 无需代码,可以节省您的负担 写自己的剧本。

enter image description here

关于错误尝试按照事项

  • 转到脚本编辑器,点击资源&gt;点击使用Google API。
  • 点击“Google API控制台”。
  • 选择API&amp; auth&gt;点击已注册的应用程序。
  • 将您的脚本项目注册为Web应用程序。
  • 选择证书&gt;生成新密钥。

答案 1 :(得分:0)

这是预期的行为。自定义功能无法要求用户访问个人数据。因此,它们不适用于所有类型的服务,特别是那些需要个人数据授权的服务。

检查此网址,了解您可以使用哪些服务 - https://developers.google.com/apps-script/guides/sheets/functions#using_apps_script_services

  

与大多数其他类型的应用程序脚本不同,自定义功能从不要求用户授权访问个人数据。因此,他们只能调用无法访问个人数据的服务