javascript - Google Analytics Embed API gigi.analytics.auth.isAuthorized() 始终返回 false

标签 javascript google-analytics google-api

我正在尝试在我的 CMS 中嵌入 Google Analytics(分析)。我想检查用户是否获得授权,如果获得授权,我将显示“退出”按钮,以便他们可以退出,然后使用其他 Google 帐户登录。

我可以使用注销按钮,但我不希望它显示,除非用户已登录。

根据文档,这应该有效: gapi.analytics.auth.isAuthorized()

但是当我将其记录到控制台时,它总是返回 false。

这是我的更多代码:

gapi.analytics.ready(function() {

        /**
         * Authorize the user immediately if the user has already granted access.
         * If no access has been created, render an authorize button inside the
         * element with the ID "embed-api-auth-container".
         */
        gapi.analytics.auth.authorize({
            container: 'embed-api-auth-container',
            clientid: 'XXXXX'
        });

        console.log(gapi.analytics.auth.isAuthorized());

请问有人可以告诉我我做错了什么吗?

最佳答案

我的答案有点晚了,但也许会对某人有所帮助。

Google Analytics api 使用 OAuth 2.0 进行授权,并且 您的代码中的 gapi.analytics.auth.isAuthorized() 始终返回 false,因为当前没有授权用户。

您可以轻松检查是否有授权用户:

var isAuthorized = gapi.analytics.auth.isAuthorized();

if(isAuthorized == true) {
  // display sign out button
}else {
  // display sign in button
}

如果您已有访问 token ,则可以将其包含在内进行授权,用户将自动登录:

gapi.analytics.auth.authorize({
    container: 'embed-api-auth-container',
    clientid: 'XXXXX',
    serverAuth: {
       access_token: 'XXXXX'
    }
});

并运行检查:

var isAuthorized = gapi.analytics.auth.isAuthorized();

if(isAuthorized == true) {
  // display sign out button
}else {
  // display sign in button
}

关于javascript - Google Analytics Embed API gigi.analytics.auth.isAuthorized() 始终返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34790126/

相关文章:

javascript - 如何在响应式设计中从 Facebook 页面插件中 Conceal "timeline"?

java - Android 应用程序不会崩溃,但不会响应未捕获的异常

google-analytics - 获取每个用户的谷歌分析数据

google-apps-script - Google API 返回响应 200 空 JSON

google-api - Google Calendar api v3 重新更新问题

javascript - 是否可以将 ECMAScript 6 生成器重置为初始状态?

javascript - 在响应式导航中添加更多列表按钮

javascript - 在 OpenLayers 3 中旋转多边形

android - 将 google_analytics_adid_collection_enabled 元数据标记添加到 Cordova AndroidManifest.xml

android - Google Play 示例错误代码 : 393238