Firefox webextension API - 杀死cookie

时间:2018-02-23 00:39:59

标签: firefox-addon firefox-webextensions

如何使用webextension API杀死特定的cookie?

我可以使用以下方式获取Cookie browser.cookies.getAll({domain:cookieDomain})

但要删除cookie,我需要网址和名称,

browser.cookies.remove({name:cookie.name,url:cookie.domain})

并且,域名无法传递给要删除的url参数。 另外,我没有从cookie对象获取url。

那么,你如何删除特定的cookie?

感谢。

1 个答案:

答案 0 :(得分:0)

您应该能够通过连接cookie.domaincookie.path来构建网址,并通过选中cookie.secure来获取协议:

const cookieName = cookie.name;
const cookieProtocol = cookie.secure ? 'https://' : 'http://';
const cookieUrl = cookieProtocol + cookie.domain + cookie.path;
browser.cookies.remove({name: cookieName, url: cookieUrl}).then(
    () => {
        console.log('Removed:', cookieName, cookieUrl);
    }
).catch(
    (aReason) => {
        console.log('Failed to remove cookie', aReason);
    }
);