关于使用 AngularFire2 和 GAPI 访问 Google 分析报告的任何指示

Any pointers on using AngularFire2 With GAPI to Access Google Analytics Reporting

Angular: Angular2 RC4

Firebase: Firebase3(最新)

AngularFire: AngularFire2(最新)

我正在尝试访问 Google Analytics Reporting v4 API。类似于 this。但是使用 Angular2 天哪。

有没有人有幸做到这一点?我用谷歌搜索过,但它似乎并不是一个热门话题。 Angular2 仍然很新,这无济于事,所以就是这样。有人有什么主意吗?我确定这是一回事。我认为?

我已经使用 AngularFire2 和 Firebase 进行身份验证,这是第一步。 ;)

2018 年更新

有人为 Google Analytics Client API V3 添加了 DefinitelyTyped/types/gapi.client.analytics。在这个 link 之后有一个自述文件,其中包含有关如何安装和使用它的说明。

原始答案

早在 2016 年,这是我实现它的方式:

src/index.html

在您应用程序的 index.html 文件中,您需要在 <head> 部分添加:

<script src="https://apis.google.com/js/platform.js" async defer></script>

typings/browser/ambient/gapi/

您需要将以下命名空间添加到您的输入中:

src/app/+login/login.component.ts

这是我组件的文件,这里需要ngAfterViewInit()使用gapi获取授权

例如,这是我的身份验证函数,我还将 API 回调转换为承诺:

private authorize() : Promise<any> {
    var authCallback;
    let authData = {
        client_id: 'your-client-id.apps.googleusercontent.com',
        scope: ['https://www.googleapis.com/auth/analytics.readonly'],
        immediate: true
    };

    let p = new Promise((resolve,reject) => {
      authCallback = response => response.error? reject(response) : resolve(response);
    });

    gapi.auth.authorize(authData, authCallback);

    return p;
}