gpt4 book ai didi

javascript - Chrome 扩展用 newtab.html 覆盖 newtab,然后访问 cookie

转载 作者:行者123 更新时间:2023-11-27 22:47:43 25 4
gpt4 key购买 nike

在我的网站上 https://example.com ,我允许用户设置他们网站首选项的 cookie,其中包括让他们打开或关闭夜间模式。

我为 https://example.com 创建了一个 chrome 扩展用文件 newtab.html 覆盖 Chrome 的 newtab。当我的 chrome 扩展程序打开 newtab.html 时,我希望能够检查在我的网站上设置的首选项 cookie https://example.com这样,如果用户通过更改 CSS 打开了夜间模式,新选项卡也将以夜间模式出现。

在我的 list 中我有:

"permissions": [ "*://*/*", "http://*/*", "https://*/*", "https://example.com", "tabs", "cookies", "contextMenus", "webRequest", "webRequestBlocking", "webNavigation", "activeTab", "storage", "alarms" ]

在我的 newtab.html 页面上,我嵌入了以下脚本:

<script type="text/javascript" src="js/newtab.js"></script>

newtab.js 包含以下代码:

var cookie = chrome.cookies.get({url: "example.com", name: "preferences"}); 
console.log(cookie);

但我在控制台中收到以下错误:

未捕获的类型错误:调用 cookies.get 时出错(对象详细信息,函数回调):没有匹配的签名。

我在这里做错了什么?我如何在 newtab.html 页面上访问 exmaple.com 的 cookie,以便相应地更改 newtab.html 页面的 CSS?

在此先感谢您对此的帮助。

最佳答案

chrome.cookies.get() 将回调作为第二个参数,因为它可能不会立即返回。该错误告诉您作为第二个参数传递的函数(未定义,因为您传递第二个参数)与所需的函数签名不匹配回调。试试这个:

chrome.cookies.get({url: "http://example.com", name: "preferences"}, cookie => {
console.log('got a cookie!', cookie);
});

关于javascript - Chrome 扩展用 newtab.html 覆盖 newtab,然后访问 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59571198/

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