我正在尝试通过chrome identity api获取用户的电子邮件和ID。
我这样做
chrome.identity.getProfileUserInfo(function(userinfo){
console.log("userinfo",userinfo);
email=userinfo.email;
uniqueId=userinfo.id;
});
我已指定identity
权限,并在范围中添加了https://www.googleapis.com/auth/userinfo.email
。
用户通过chrome.identity.getAuthToken
登录,我有访问令牌。
console.log("userinfo",userinfo);
返回userinfo Object {email: "", id: ""}
答案 0 :(得分:10)
- 电子邮件:如果用户未登录或未指定identity.email清单权限,则为空。
- id :如果用户未登录或(在M41 +中)未指定identity.email清单权限,则为空。
修改manifest.json
以包含两项权限:
"permissions": ["identity", "identity.email"]
答案 1 :(得分:1)
除了拥有the related Chrome issue for this subject中发布的identity.email
权限之外,用户还必须在chrome://settings
->人员->同步其ID下打开其个人资料同步并使用chrome.identity.getProfileUserInfo
来显示电子邮件。