Google chrome 如何在我的网站和chrome扩展之间保持用户的登录状态

Google chrome 如何在我的网站和chrome扩展之间保持用户的登录状态,google-chrome,google-chrome-extension,local-storage,Google Chrome,Google Chrome Extension,Local Storage,我构建了一个Chrome扩展,其中使用内容脚本注入将登录表单显示为侧栏。如果用户已经登录网站,我不希望用户看到此登录表单,反之亦然。如果用户登录Chrome扩展,然后访问网站,用户应自动登录 当用户成功登录时,我将从后端返回令牌 我的问题是,存储这些令牌的最佳方式是什么,这样我的扩展中的内容脚本和网站都可以访问令牌,以检查用户是否已经登录 据我所知,我有localStorage、ChromeStorage,但我不知道它们是否在浏览器和扩展的选项卡之间共享 任何方向都是高度赞赏的 谢谢。如果您要返

我构建了一个Chrome扩展,其中使用内容脚本注入将登录表单显示为侧栏。如果用户已经登录网站,我不希望用户看到此登录表单,反之亦然。如果用户登录Chrome扩展,然后访问网站,用户应自动登录

当用户成功登录时,我将从后端返回令牌

我的问题是,存储这些令牌的最佳方式是什么,这样我的扩展中的内容脚本和网站都可以访问令牌,以检查用户是否已经登录

据我所知,我有localStorage、ChromeStorage,但我不知道它们是否在浏览器和扩展的选项卡之间共享

任何方向都是高度赞赏的


谢谢。

如果您要返回令牌,一个合理的方法是将内容脚本插入与包含令牌的回调URL匹配的页面,将其提取并保存到
chrome.storage
。它在内容脚本和所有其他扩展上下文之间共享

注意:
chrome.storage
并不完全安全:它在磁盘上没有加密,可以通过开发工具窥探。然后,令牌通常存储在cookie存储中,即使不访问(稍微)更安全的密码存储,也可以同样检查cookie存储


也许将令牌保存在扩展中的唯一更安全的方法是
chrome.identity
API,但随后您必须单独登录,这会破坏您的目标。

谢谢。我正在使用内容脚本在其他网页上注入侧栏。不是我的网页。你认为我可以在后台页面中使用chrome.cookies从我的网站中提取cookie,然后将其存储在chrome.storage中,然后在我的内容脚本中访问它,因为内容脚本可以访问chrome.storage api?是的,我没有想到这一点。我的理由是立即得到登录通知。你的理由也很正确。在我的场景中,我只在用户单击浏览器操作时加载内容脚本,所以我不需要立即得到通知。不过非常感谢。你让我朝正确的方向走。