gpt4 book ai didi

javascript - Chrome 扩展 : How to get user name?

转载 作者:数据小太阳 更新时间:2023-10-29 05:49:49 26 4
gpt4 key购买 nike

我正在创建一个谷歌浏览器扩展程序。对于某些功能,我需要用户的系统登录名(无密码)。通过使用 JavaScript,这是不可能的。

有人建议 NPAPI,但我对此一无所知,所以我放弃了。

接下来我将尝试在 Chrome 浏览器 中获取用户名。但仍然没有成功。

我尝试使用类似的东西:

var currentUser; 
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function(data) {
if (xhr.readyState == 1) {
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://myaccount.google.com/?pli=1', false);
xhr.send(); `

仍然没有成功。

我的整个计划是获取用户名(桌面登录名或 Chrome 登录名),但我无法获取。

我需要将此用户名作为参数发送到我的服务,因为用户名用作主键。

最佳答案

首先,您说您需要此登录信息来识别用户,并将其用作主键。

这会自动取消系统登录名的资格:它们不是唯一的

现在,让我们回到已登录的 Chrome 用户。 Google 帐户相当独特。

这里有两种方法。

  1. Chrome 的 chrome.identity API can provide电子邮件和(也许更适合您的目的)帐户的唯一 ID。

    您将需要"identity""identity.email" 权限。然后:

    chrome.identity.getProfileUserInfo(function(userInfo) {
    /* Use userInfo.email, or better (for privacy) userInfo.id
    They will be empty if user is not signed in in Chrome */
    });
  2. 另一种方法是在您的服务上使用 Google 的 OAuth。同样,请参阅 chrome.identity 文档。

关于javascript - Chrome 扩展 : How to get user name?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28980582/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com