Javascript 如何使用OAuth在chrome扩展中获得唯一的用户ID?
我在清单文件中使用Javascript 如何使用OAuth在chrome扩展中获得唯一的用户ID?,javascript,json,google-chrome-extension,oauth,Javascript,Json,Google Chrome Extension,Oauth,我在清单文件中使用identity权限,在JavaScript代码中使用chrome.identity.getAuthToken({'interactive':true},function(token)获取使用标识令牌 如何获取唯一的用户ID或电子邮件地址?最好不添加新权限。您可以使用来获取电子邮件地址和唯一ID。您需要添加标识。电子邮件权限(除了标识)。它不需要OAuth2令牌(甚至不需要网络连接) 以下是将此信息打印到后台页面控制台的最小扩展: manifest.json { "mani
identity
权限,在JavaScript代码中使用chrome.identity.getAuthToken({'interactive':true},function(token)
获取使用标识令牌
如何获取唯一的用户ID或电子邮件地址?最好不添加新权限。您可以使用来获取电子邮件地址和唯一ID。您需要添加标识。电子邮件权限(除了标识
)。它不需要OAuth2令牌(甚至不需要网络连接)
以下是将此信息打印到后台页面控制台的最小扩展:
manifest.json
{
"manifest_version" : 2,
"name" : "Identity Test",
"version" : "0.1",
"background": {
"scripts": ["background.js"]
},
"permissions": [
"identity",
"identity.email"
]
}
background.js
chrome.identity.getProfileUserInfo(function(userInfo) {
console.log(JSON.stringify(userInfo));
});
您可以通过使用OAuth2令牌调用Google API来获取用户信息。我相信您需要同时设置配置文件
和电子邮件
范围。如果您使用,您可以调用。这更严格地满足了您的问题,其中指定使用OAuth,并且更喜欢不添加权限,但我猜thatchrome.identity.getProfileUserInfo()
才是您真正想要的。如果没有其他权限,它将取决于您在manifest.json文件中声明的
例如,如果您声明了任何Google Drive作用域,则可以使用Google Drive的About GET方法(请参阅)要检索用户id和电子邮件,请在其中。注意:这仅在用户登录到chrome内部的配置文件时有效,否则响应将为空。但仍然为+1,因为这与chrome内部真正的唯一id最接近。