如何通过Chrome扩展捕获cookie



我需要从一个特定的网站捕获一个cookie,我试图使用Chrome扩展做到这一点,但我从来没有创建过一个。我读了很多教程,但我不能做到这一点。

我正在尝试使用内容脚本捕获cookie,但每次都收到错误消息。

这是我的清单,内容脚本和错误的代码…

manifest.json

...

"manifest_version": 3,
"permissions": [
"cookies"
],
"content_scripts": [{
"matches": ["*://google.com/"],
"js": ["content.js"]
}]

content.js


var ID;
function getCookies(domain, name) {
chrome.cookies.get({"url": domain, "name": name}, function(cookie) {
ID = cookie.value;
showId();
});
}
function showId() {
alert(ID);
}
getCookies("https://google.com/", "SSID");  

错误:Uncaught TypeError: Cannot read property 'get' of undefined

我该如何修复它?

chrome.cookies.get的文档说明:

[…如果在manifest文件中没有指定此URL的主机权限,则API调用将失败。

您需要请求您感兴趣的所有域的权限,这意味着将它们添加到您的manifest.json中声明的permissions中:

"permissions": [
"cookies",
"*://google.com/"
],

其次,您实际上不需要注入内容脚本来提取cookie。如果你愿意,你可以简单地在你的背景页面中这样做。

最新更新