Google Analytics API - 对 Analytics 属性的授权

Google Analytics API - Authorization on Analytics Properties

我正在使用 Google 分析 API。 我需要知道是否存在一个函数 returns 我一个布尔值(或类似的东西)告诉我登录的 google 帐户是否有权显示图表,但我没有找到任何东西类似 API.

所以我尝试做一些不同的事情,我尝试使用函数 execute() 绘制图表时处理错误,使用此处解释的回调:https://developers.google.com/analytics/devguides/reporting/core/v3/coreDevguide#build-a-core-reporting-api-query 但是我的代码没有调用那个回调。

这是我的代码:

var dataChart = new gapi.analytics.googleCharts.DataChart({
    query: {
      ids: ga_property_id,
      metrics: 'ga:sessions, ga:users',
      dimensions: 'ga:date',
    },
    chart: {
      container: 'chart-container',
      type: 'LINE',
      options: {
        width: '100%',
        fontSize: 14
      }
    }
});

function makeApiCall() {
    dataChart.set({query: dateRange});
    dataChart.execute(handleCoreReportingResults);
}

function handleCoreReportingResults(results) {
    if (!results.error) 
    {
        console.log("success");
    } 
    else 
    {
        console.log("fail");
    }
}

makeApiCall();

我也尝试将 execute() 放入 try/catch 但它没有捕获,我猜是因为异常来自 gapi。

找到一种方法来了解登录用户是否拥有 属性 的权限会更好,但修复此代码并使其正常工作也会非常好!

提前致谢!

您可以调用 accounts Summaries API 并找到用户有权访问的帐户的完整列表。

summary = gapi.client.analytics.management.accountSummaries.list();

然后循环结果以验证 属性 或视图是否在列表中。

但您也可以包含一个 view selector 组件,这样您就只会使用用户有权访问的视图 ID。