Удаление куки из расширения Chrome - PullRequest
7 голосов
/ 28 марта 2011

Я хочу удалить Cookie (в соответствии с некоторыми критериями) из расширения Chrome.Согласно документации из chrome.cookies.remove он ожидает объект с полями url (URL-адрес, связанный с cookie-файлом) и name (имя удаляемого cookie-файла).

Теперь cookie имеет следующие поля: name, value, domain, hostOnly, path, secure, httpOnly, session, expirationDate, storeId, но не url.Как получить URL-адрес определенного файла cookie, чтобы я мог удалить его?

Для справки один из моих файлов cookie выглядит следующим образом:

domain: ".google.com"
expirationDate: 1364393586
hostOnly: false
httpOnly: false
name: "PREF"
path: "/"
secure: false
session: false
storeId: "0"
value: "ID=8<snip>u"

Ответы [ 2 ]

7 голосов
/ 29 марта 2011

После некоторых проб и ошибок вот как я получаю URL, похоже, это работает для всего (кроме, возможно, file://)

function extrapolateUrlFromCookie(cookie) {
    var prefix = cookie.secure ? "https://" : "http://";
    if (cookie.domain.charAt(0) == ".")
        prefix += "www";

    return prefix + cookie.domain + cookie.path;
}
1 голос
/ 28 марта 2011

Я передал http://www.google.com как URL, и это сработало.Возможно, он просто хочет получить любой URL, соответствующий шаблону domain.

chrome.cookies.remove({url:"http://www.google.com", name: "PREF"});

(вам также необходимо иметь разрешение домена для google.com)

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