Analytics API 使用 public 访问 api 密钥时出现 401 错误

401 error on Analytics API using public access api key

不确定如何以任何其他方式对此进行测试,但使用 public 访问 api 键会导致 Result: Login Required 错误。 Google 分析不能通过 public 访问密钥调用吗?

var google = require('googleapis')
var analytics = google.analytics('v3')
var c = require('./config.json')

analytics.data.ga.get({
    key: c.key,
    'ids': c.ids,
    'start-date': '2015-07-15',
    'end-date': '2015-07-24',
    'metrics': 'ga:sessions'
})

不确定 Google Analytics API 是否支持仅使用 public_api 密钥的调用,因此我能够使用服务帐户实现访问。

var google = require('googleapis'),
    analytics = google.analytics({ version: 'v3'})
    key = require('./key.json'),

var jwtClient = new google.auth.JWT(
    key.client_email,
    null,
    key.private_key,
    ['https://www.googleapis.com/auth/analytics.readonly'],
    null)

analytics.data.ga.get({
  'ids': 'ga:xxxxxxx',
  'start-date': startDate,
  'end-date': endDate,
  'metrics': 'ga:sessions',
  auth: jwtClient
  }, function (err, resp) {
    console.log(resp)
  })