【问题标题】:How do I get the correct access token for my Google Analytics Embed API app?如何为我的 Google Analytics Embed API 应用程序获取正确的访问令牌?
【发布时间】:2021-11-27 19:28:45
【问题描述】:

我有 Google 制作的这段代码,我想进行服务器端身份验证,但我在 https://developers.google.com/oauthplayground/ 上获得的访问令牌似乎不起作用。我做错了什么?

当我使用客户端身份验证时,它可以工作,但我需要在没有登录的情况下显示图表。当然,我删除访问令牌只是为了发布。

<script>
gapi.analytics.ready(function() {

  // Step 3: Authorize the user.

  var CLIENT_ID = 'Insert your client ID here';

  gapi.analytics.auth.authorize({
  serverAuth: {
    access_token: ' '
  }
});

  // Step 4: Create the view selector.

  var viewSelector = new gapi.analytics.ViewSelector({
    container: 'view-selector'
  });

  // Step 5: Create the timeline chart.

  var timeline = new gapi.analytics.googleCharts.DataChart({
    reportType: 'ga',
    query: {
      'dimensions': 'ga:date',
      'metrics': 'ga:sessions',
      'start-date': '30daysAgo',
      'end-date': 'yesterday',
    },
    chart: {
      type: 'LINE',
      container: 'timeline'
    }
  });

  // Step 6: Hook up the components to work together.

  gapi.analytics.auth.on('success', function(response) {
    viewSelector.execute();
  });

  viewSelector.on('change', function(ids) {
    var newIds = {
      query: {
        ids: ids
      }
    }
    timeline.set(newIds).execute();
  });
});
</script>

【问题讨论】:

    标签: javascript oauth-2.0 google-analytics google-oauth google-analytics-api


    【解决方案1】:

    当我使用客户端身份验证时,它可以工作,但我需要在没有登录的情况下显示图表。当然,我删除了访问令牌只是为了发布。

    您尝试访问的数据是私人用户数据,为了访问您需要获得用户授权的私人用户数据。唯一的方法是请求用户访问。为此,我们使用 Oauth2。

    Oauth2 访问令牌会在一小时后过期,因此您尝试做的事情不会奏效。您通过 google oauth playground 创建的令牌是访问令牌。

    您需要在google cloud console 上创建网络浏览器凭据。 确保也为本地服务器设置 JavaScript 源,例如:http://localhost:8080。

    本视频将向您介绍如何创建凭据。 web application redetinals

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-08
      • 1970-01-01
      • 2013-03-25
      • 1970-01-01
      • 2015-01-08
      • 2018-12-16
      • 1970-01-01
      • 2012-05-04
      相关资源
      最近更新 更多