javascript - 检测用户是否从 Chrome 扩展程序登录

标签 javascript google-chrome-extension

有没有一种简单的方法可以从 Chrome 扩展程序检测用户是否登录到他的谷歌帐户。

我想有一种讨厌的方法可以通过加载需要身份验证的 html/css/js 资源来解决这个问题。 但我想以一种“清晰”的方式做到这一点。

谢谢,最好的, 维克托

最佳答案

chromium-extensions 邮件列表中对此进行了一些讨论: http://groups.google.com/a/chromium.org/group/chromium-extensions/browse_thread/thread/6e46a3a6e46d9110/

基本上,正如用户建议的那样,如果当前用户已登录,您可以向 google.com 发送一个 Xml Http 请求,并通过正则表达式进行搜索:

来源:Guillaume Boudreau(在 chromium-extensions 邮件列表上)

var currentUser;
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function(data) {
       if (xhr.readyState == 4) {
               currentUser = null;
               if (xhr.status == 200) {
                       var re = new RegExp(/<b class="?gb4"?>[\s]*([^<]+@[^<]+)<\/b>/i);
                       var m = re.exec(xhr.responseText);
                       if (m && m.length == 2) {
                               currentUser = m[1];
                       }
               }
               console.log("Currently logged user (on google.com): " +
currentUser);
       }
};
xhr.open('GET', 'https://www.google.com/', false);
xhr.send();

关于javascript - 检测用户是否从 Chrome 扩展程序登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2971491/

相关文章:

javascript - 在 chrome 扩展中使用 html5 blob 下载文件

javascript - Chrome 扩展程序第一次无法运行

javascript - firebase.auth().createCustomToken 在网络应用程序上未定义

javascript - 编写 jQuery 插件,在哪里设置 $.extend 以便可以在其他功能上访问

javascript - 使用 jquery 在选择框中的选项中填充数据

java - 如何从 Java 桌面应用程序(如 Java Swing 应用程序)向 Chrome 扩展发送/传递消息

javascript - Chrome Extension WebSQL - 需要后台和内容页面来访问同一个数据库,但他们不需要

javascript - Chrome.storage.onchanged 无法正常工作 Chrome 扩展

javascript - 带有对象的 AngularJS 数组

javascript - JS新手,有没有办法把这些圆圈变成菱形?