google-chrome - Google API 检测多帐户登录

标签 google-chrome google-drive-api google-docs-api

Google 的文档 sharing dialog 有问题如果用户登录多个帐户,它将旋转并报告“...此时不可用...”

这已在 stackoverflow 中报告,例如 Can't get Google Drive API share dialog to work when signed into multiple accounts Google 正在计划修复。

在此期间,我试图找到一种能够可靠地检测用户是否登录到多个帐户的方法,使我能够仅在对话框正常工作时显示共享选项。任何人都可以建议一种检测多次登录的方法吗?

最佳答案

除非您通过 OAuth 授权每个帐户(这不是可接受的方法),否则您无法检查用户是否登录了多个帐户。这是我针对此错误的可怕解决方法。

免责声明:
1. 这是一个 setTimeout 观察者:(
2. 这取决于用户使用英语语言环境的事实:( :(
3. 这依赖于文本恰好是:抱歉,目前无法共享。请稍后重试。 :( :( :(

var TIME_LIMIT_SECONDS = 35;
var errorTimer = null;
var startTime = null;
// Call this function after you call showSettingsDialog()
function watchForErrors() {
    startTime = new Date().getTime();
    startErrorTimer();
};
// Starts the error check
function startErrorTimer() {
    errorTimer = setTimeout(function () {
        var $test = $(".dcs-cd-dcs-c-dcs-eb").filter(function () { return $(this).text().trim() === "Sorry, sharing is unavailable at this time. Please try again later."; });
        if ($test.length) {
            // Message detected...do something
            console.log("Error Found!");
            // Close the share dialog
            $("span.dcs-cd-dcs-c-dcs-k-dcs-bc[role='button']").trigger("click");
            return;
        }
        if ((new Date().getTime() - startTime) / 1000 < TIME_LIMIT_SECONDS) {
            // No errors detected. Could be a success at this point
            startErrorTimer();
        } else {
           // No errors found after 35 seconds - probably a success?
            console.log("Timeout - Success?");
        }
    }, 200);
};

我所做的就是在调用 showSettingsDialog() 后立即在共享对话框后面显示一条成功消息。如果该方法失败,我会关闭共享对话框。如果该方法成功,用户将关闭对话框并查看我的成功消息。

关于google-chrome - Google API 检测多帐户登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26162249/

相关文章:

python - 如何将 Google 文档列表 API 与非文档文件(例如 .jpeg .gif)一起使用?

python - 部署到 App Engine 标准环境时如何修复 'ImportError: cannot import name base'?

google-chrome - css3 多重 3d 旋转

php - Chrome 错误 500 的谷歌云消息传递

google-drive-api - 如何在可索引文本中查找包含撇号的文档

python - pydrive:尝试将文件从远程服务器上传到 Google Drive

android - 是否可以将 Google 云端硬盘用作我的应用程序数据的主机?那么app数据可以上线吗?

javascript - 我不断收到的控制台警告是什么 - 延迟长时间运行的计时器任务以提高滚动平滑度?

javascript - W3C 地理定位 API 在 Chrome 中不起作用

python - invalid_scope : https://spreadsheets. google.com/feeds 不是有效的受众字符串