不使用oauth2。 因为我不想获取任何用户的数据或进行身份验证,所以只获取id。 我想监视登录/注销(chrome.identity.onSignInChanged不起作用)。 ps我需要用于在我的服务器上存储数据的ID(chrome.storage.sync太小)。
答案 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请求并解析内容以提取有关用户登录的信息和用户的电子邮件
(当然,这不是很强大,因为电子邮件可能会发生变化,但对于临时解决方案而言可能还不错。)