如何从NODE JS访问Google Analytics

时间:2018-04-24 06:36:44

标签: javascript node.js google-analytics google-oauth google-analytics-api

我尝试了gooleanalytics

var GA = require('googleanalytics'),
    util = require('util'),
    config = {
        "user": "myusername",
        "password": "mypassword"
    },
    ga = new GA.GA(config);

ga.login(function(err, token) {
    var options = {
        'ids': 'ga:<profileid>',
        'start-date': '2010-09-01',
        'end-date': '2010-09-30',
        'dimensions': 'ga:pagePath',
        'metrics': 'ga:pageviews',
        'sort': '-ga:pagePath'
    };

    ga.get(options, function(err, entries) {
       util.debug(JSON.stringify(entries));
    });
});

但是收到错误

  

events.js:165         扔错了;         ^

     

错误:未捕获,未指定的“错误”事件。   (https://developers.google.com/accounts/docs/AuthForInstalledApps)       在GA.emit(events.js:163:17)

1 个答案:

答案 0 :(得分:2)

  

重要提示:自2012年4月20日起,ClientLogin已正式弃用,现已不再提供。对ClientLogin的请求将因HTTP 404响应而失败。我们建议您尽快迁移到OAuth 2.0。

 config = {
        "user": "myusername",
        "password": "mypassword"
    },

您正尝试使用登录名和密码向Google进行身份验证。这称为客户端登录,并于2015年针对所有API关闭。您需要使用Oauth2或服务帐户对Google进行身份验证。您正在使用的代码和库将无法工作,直到开发人员更新它以支持新的登录方法,因为它未在三年内开发,我认为您可能需要考虑使用官方Google apis node.js client library示例{{3 }}

更新

analyticsReporting/batchGet.js我为此追踪了github项目,看起来开发人员知道这个问题,但选择不更新项目。

  

ncb000gt于2015年4月24日发表评论

     

不知道抱歉。我很长时间没有使用过这个模块,所以我不确定这笔交易是什么。

这是关闭它的确切日期。这意味着一旦发生,他就会被告知。

  

ncb000gt于2015年5月28日发表评论

     

如果有人想要刺伤它,我绝对会为此感到骄傲。否则,官方api可能会更好。

如果有人想要修复它,作者似乎正在寻求帮助。