【问题标题】:Node.js - Display my own google analytics data to visitorsNode.js - 向访问者显示我自己的谷歌分析数据
【发布时间】:2017-04-16 02:15:31
【问题描述】:

我正在努力在服务器端进行身份验证。

我想向我网站的访问者显示我自己的来自 Google Analytics 的数据。 我能找到的每一本手册、API 或教程都解释了如何使用 OAUTH2 对用户进行身份验证。

即:https://github.com/google/google-api-nodejs-client#alpha https://developers.google.com/analytics/devguides/reporting/embed/v1/core-methods-reference https://developers.google.com/analytics/devguides/reporting/core/v2/authorization 等等。

这样,我不需要对用户进行身份验证,因为我想访问的不是他们的帐户,而是我自己的。

这是我正在使用的:

var google = require('googleapis');
var scopes = ['https://www.googleapis.com/auth/analytics.readonly']
var OAuth2 = google.auth.OAuth2;
var oauth2Client = new OAuth2(auth.googleAPI);
var analytics = google.analytics("v3")
console.log(analytics.data.ga.get({
    ids:"ga:107290894",
    "start-date":"2016-01-01",
    "end-date":"2017-04-15",
    "metrics":'ga:sessions,ga:pageviews',
}))

但我收到以下错误:

{ [Error: Login Required]
code: 401,
errors: 
 [ { domain: 'global',
   reason: 'required',
   message: 'Login Required',
   locationType: 'header',
   location: 'Authorization' } ] }

通过 auth.googleAPI,我传递了客户端 ID、密钥和公钥,以及我在创建服务帐户密钥时从 google 获得的 JSON 文件中的所有其他信息。

我做错了什么?

【问题讨论】:

    标签: node.js google-analytics


    【解决方案1】:

    虽然文档中的内容非常不清楚,但事实证明我需要使用 googleapis 提供的 JWT(服务令牌)。

    希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 2013-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多