0

我尝试从一个特殊的网站获取 Cookie。

清单权限:

"permissions": [
"tabs",
"*//*free-way.me",
"storage",
 "cookies"
],

这是我的 popup.js:

function getCookies(domain, name) 
{
    chrome.cookies.get({"url": domain, "name": name}, function(cookie) {
        return cookie.value;

    });
}

var uid = getCookies("http://.free-way.me", "uid")     
var upw = getCookies("http://.free-way.me", "upw")     

document.getElementById("user").value = uid;
document.getElementById("pw").value = upw;

..但这只是告诉我,我没有权限:

cookies.get: No host permissions for cookies at url: "http://.free-way.me/".
at getCookies (chrome-extension://[...]/popup.js:19:24)
at chrome-extension://[...]/popup.js:25:13 

你能告诉我我犯的错误吗?...它让我发疯。谢谢!

马库斯

4

2 回答 2

1

Manifest 版本 3 对主机权限进行了一些更改。在 MV3 中,您需要将主机权限与其他权限分开指定:

// Manifest V2
"permissions": [
  "tabs",
  "bookmarks",
  "http://www.blogger.com/",
],
"optional_permissions": [
  "*://*/*",
  "unlimitedStorage"
]

 // Manifest V3
"permissions": [
  "tabs",
  "bookmarks"
],
"optional_permissions": [
  "unlimitedStorage"
],
"host_permissions": [
  "http://www.blogger.com/",
  "*://*/*"
],
于 2021-08-15T17:41:20.753 回答
0

您的匹配模式格式不正确。您在主机名中的星号后缺少一个句点:

"*//*.free-way.me"

如果主机标识符有*,它必须:

  • 是整个主机标识符,或
  • 主机标识符的第一个字符,后面紧跟一个句点。
于 2013-10-01T19:17:03.207 回答