0

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

4

2 回答 2

1

您说您不想使用 oauth,因为您不需要任何用户数据。但是 id 或 email 是用户数据,并且有一个 oauth 范围。使用它,否则其他替代品将来可能会中断,或者等到 chrome 身份全部消失。

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

于 2013-11-06T14:33:26.987 回答
-1

chrome.identity.onSignInChanged不起作用(如您所述),因为它目前dev仅在频道上可用(根据和其他在线来源)。
所以,运气好的话,它stable很快就会在频道上播出……

有点hacky,但是(如this answer中所建议)您可以发出AJAX请求https://www.google.com/settings/account并解析内容以提取有关正在登录的用户和用户电子邮件的信息。
(当然,这不是很可靠,因为电子邮件可能会更改,但对于临时解决方法来说可能已经足够了。)

于 2013-11-06T13:12:00.990 回答