繁体   English   中英

尝试从Chrome扩展程序获取Cookie时出错

[英]Error Trying to Get Cookies From Chrome Extension

我有一个非常基本的Chrome扩展程序。 我可以很好地执行JS,但访问Chrome API中的任何内容似乎都是一个问题。 我正在尝试删除特定网站的Cookie。 但是,当我的代码执行时,我收到以下错误。

错误:

content.js:6 Uncaught TypeError: Cannot read property 'getAll' of undefined

我的代码:

(function(){
   chrome.cookies.getAll({}, cookies=>{
      _.forEach(cookies, cookie=>{
          chrome.cookies.remove({name: cookie.name, url: "www.mydomain.com"});
      });
    });
)();

我认为它可能与我的权限有关,但我不确定。 这是我的manifest.json文件。

{
  "manifest_version": 2,
  "name": "Hello World Extension",
  "version": "0.1",
  "content_scripts": [
      {
        "matches": [
          "<all_urls>"
        ],
        "js": ["jquery.js","content.js"]
      }
  ],
  "permissions": [
      "cookies"
  ]
}

要使用Cookie API,您必须在清单中声明“cookies”权限,以及要访问其Cookie的任何主机的主机权限。

{
  "manifest_version": 2,
  "name": "Hello World Extension",
  "version": "0.1",
  "content_scripts": [
    {
      "matches": [
         "<all_urls>"
      ],
      "js": ["jquery.js","content.js"]
    }
  ],
  "permissions": [
     "cookies",
     "http://*/*",
     "https://*/*"
  ]
}

要删除Cookie,请尝试以下操作:

function removeAll(url){
   chrome.cookies.getAll({}, function(cookies) {
     for (var i in cookies) {
        chrome.cookies.remove({"url": url, "name": cookie.name});
     }
  });
}

我希望这有效

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM