关于使用 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;
}
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;
}