gpt4 book ai didi

google-chrome - 我可以从 Chrome 扩展程序访问站点的 localStorage 吗?

转载 作者:行者123 更新时间:2023-12-01 18:04:15 24 4
gpt4 key购买 nike

我的 Chrome 扩展有两种状态: 1.某些站点在localStorage(另一个域)中有身份验证数据,所以我必须显示主窗口。 2. 没有身份验证数据,因此我必须显示带有登录名和密码表单的窗口。

为了定义是否提供身份验证数据,我想检查他的 localStorage,但看起来这是不可能的。

但是,chrome.storage.local.getchrome.storage.local.set非常适合扩展程序的localStorage。

或者有没有办法做到这一点 - 访问另一个站点的 localStorage ?

最佳答案

是的,您可以在页面上执行脚本来访问本地存储。您可以通过多种不同的方式来执行此操作,包括内容脚本或注入(inject)脚本。

我正在使用chrome-extension-async用于async/await支持。

例如在popup.js

document.addEventListener('DOMContentLoaded', async () => {
try {
const key = "foobar"

// Get the current tab
const tabs = await chrome.tabs.query({ active: true, currentWindow: true });
const tab = tabs[0];

// Execute script in the current tab
const fromPageLocalStore = await chrome.tabs.executeScript(tab.id, { code: `localStorage['${key}']` });

// Store the result
await chrome.storage.local.set({[key]:fromPageLocalStore[0]});
}
catch(err) {
// Log exceptions
}
});

关于google-chrome - 我可以从 Chrome 扩展程序访问站点的 localStorage 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43050868/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com