如何从Chrome扩展程序获取已登录的Google用户的ID?

时间:2013-11-06 11:22:26

标签: google-chrome google-chrome-extension

不使用oauth2。 因为我不想获取任何用户的数据或进行身份验证,所以只获取id。 我想监视登录/注销(chrome.identity.onSignInChanged不起作用)。 ps我需要用于在我的服务器上存储数据的ID(chrome.storage.sync太小)。

2 个答案:

答案 0 :(得分:1)

你说你不想使用oauth,因为你不需要任何用户数据。然而,id或电子邮件是用户数据,并且只有那样的oauth范围。使用它,否则其他替代品可能会在未来中断,或者等到所有人都知道chrome身份。

如果你真的不想要oauth,另一种方法是在chrome同步中存储一个随机数并将其用作你的id。如果随机足够大,你将在实践中避免碰撞。以1970年以来的当前毫秒为前缀,并且我打赌不会有碰撞。

答案 1 :(得分:-1)

chrome.identity.onSignInChanged 无效(如您所述),因为它目前仅在dev频道上提供(根据 this < / strong>和其他来源在线)。
所以,运气好的话,很快就可以在stable频道上找到...

有点hacky,但是(如 this answer 中所述)您可以向https://www.google.com/settings/account发出AJAX请求并解析内容以提取有关用户登录的信息和用户的电子邮件 (当然,这不是很强大,因为电子邮件可能会发生变化,但对于临时解决方案而言可能还不错。)