Вызов скрипта для очистки куки на конкретном сайте в расширении Chrome - PullRequest
0 голосов
/ 26 марта 2019

Я пытаюсь создать расширение Chrome, которое проверяет, содержит ли сайт определенный элемент, затем очищает куки для этого сайта и обновляет.

Я создал пример расширения для удаления файлов cookie, но в background.js, используя событие chrome.browserAction.onClicked.addListener,:

chrome.browserAction.onClicked.addListener(function(tab) {

    var url = tab.url;
    var matches = url.match(/^https?\:\/\/([^\/?#]+)(?:[\/?#]|$)/i);
    var d = matches && matches[1].replace('www.','');
    d = '.'+d;

    chrome.cookies.getAll({domain: d}, function (cookies) {

        for (var i=0; i<cookies.length; i++) {
            var url = "http" + (cookies[i].secure ? "s" : "") + "://" + cookies[i].domain + cookies[i].path;
            var cname = cookies[i].name;

            chrome.cookies.remove({
                "url": url,
                "name": cname
            });
        }

        chrome.tabs.reload();
    });
});

Я взял этот код из одного из постов в stackoverflow, и я пытался преобразовать его для своих нужд.

В моем основном расширении в background.js у меня есть:

chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
chrome.tabs.getSelected(null, function(tab){
   chrome.tabs.executeScript(null, {file: 'script.js'});
});
});

, а затем в script.js:

..some code...
var test = document.getElementById('u_0_c');
         if (test === null || test.innerText == "") {
            /*------------------------------*/
              HERE I WANT TO CLEAR COOKIES
            /*----------------------------*/
         }
..some code...

Я не могу использовать свой код для очистки куки, потому что я получил такие ошибки, как: Cannot read property 'getSelected' of undefined и подобные.

Спасибо за любую помощь;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...