【发布时间】:2019-10-11 12:21:08
【问题描述】:
我正在尝试获取 chrome 扩展程序来设置 cookie。函数 chrome.cookies.set() 被调用,但我在开发人员工具的 cookie 选项卡中没有看到它。
我的清单是以下权限:
"permissions": [
"cookies",
"*://*.google.com",
"http://*/*",
"https://*/*"
]
我设置 cookie 的代码
let cookie = {
url:"https://www.google.com",
name: "APISID",
value : "fdENkN9e8UYPb5Ax/A-GZrP_TZvgiX2kxh",
domain: ".google.com",
path : "/",
};
chrome.cookies.set(cookie, function (c) {
console.log(JSON.stringify(c));
console.log(chrome.extension.lastError);
console.log(chrome.runtime.lastError);
});
}
【问题讨论】:
-
console.log 输出是什么样的?
-
我在 chrome://extensions 中看到一条错误消息 -
"*://*.google.com"是格式错误的模式。您需要像这样"*://*.google.com/"添加/。有了这个修复,你的代码就可以工作了,我看到了 cookie。还要确保您没有在内容脚本中运行它,在这种情况下,您需要将其移动到后台脚本(或任何其他成熟的脚本,如弹出脚本等)。 -
我在弹出脚本中有它。会不会有问题?
-
我想我知道问题出在哪里。我使用的是隐身模式。显然 chrome.cookies.set() 只能在常规模式下工作,而不是隐身模式。经验教训。
标签: javascript google-chrome cookies google-chrome-extension