Удалить куки по имени?

Как я могу удалить определенный файл cookie с именемroundcube_sessauth?

Не должно быть следующего:

function del_cookie(name) {
    document.cookie = 'roundcube_sessauth' + 
    '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
} 

А потом

<a href="javascript:del_cookie(name);">KILL</a>

Убейroundcube_sessauth печенье?

 Derek 朕會功夫15 мая 2012 г., 06:02
@ paxdiablo -How can I delete a specific cookie ...
 paxdiablo15 мая 2012 г., 03:21
name? Какой в этом смысл? Или это похмелье от более универсальной версии, позволяющей указать имя файла cookie?
 paxdiablo15 мая 2012 г., 03:22
Не думай, что это обман. Это конкретно просит про очисткувс печенье
 Charlie15 мая 2012 г., 03:22
Я не хочу удалять все куки ... Только один. Я нашел основной код от поиска в Google. И конечно я попробовал это. @Paxdiablo Я предположил, что он назвал cookie, но я могу быть совершенно неправ.
 paxdiablo15 мая 2012 г., 06:10
@ Дерек и др. Вы, кажется, неправильно поняли. Я заявлял, что предложенный обман от Гейба вовсе не был обманом, потому что предложенный обман спросил об удалениивс куки, и этот вопрос задает вопрос об удаленииконкретны cookie. Я былн жаловаться на этот вопрос в любом виде, форме или форме: -)

Ответы на вопрос(5)

Решение Вопроса

Чтобы удалить печенье, установитеexpires свидание с чем-то в прошлом. Функция, которая делает это, будет.

var delete_cookie = function(name) {
    document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;';
};

Затем удалите печенье с именемroundcube_sessauth просто сделать

delete_cookie('roundcube_sessauth');
 Daniel F02 авг. 2015 г., 00:50
Этот ответ не работал для меня в Chrome, не пробовал в Firefox. Но ответ Эмии ниже сработал.
 Charlie15 мая 2012 г., 03:39
Нет ошибок, я думаю, что это просто не удалить куки в Roundcube. Вероятно, он просто удаляет другие файлы cookie.
 Charlie15 мая 2012 г., 03:29
Я чувствую себя такдолже работает (похоже, должно работать: D!), но я просматриваю файлы cookie, установленные моей страницей в Firefox, и когда я нажимаю кнопку «УБИТЬ», файл cookie не удаляется. Есть идеи почему?
 user67211815 мая 2012 г., 03:30
Это работает в Google Chrome. Установите firebug и посмотрите, есть ли ошибки.
 bencripps23 июн. 2015 г., 17:07
Для пользователей, которые ищут ответ на этот вопрос, см. Ответ ниже.path=/люч @ важен для совместимости браузера.

Ты можешь попробовать это решение

var d = new Date();
d.setTime(d.getTime() + (0*60*1000));
var expires = "expires="+d.toUTCString();
document.cookie = 'COOKIE_NAME' + "=" + "" + ";domain=domain.com;path=/;expires=" + expires;
 Nafees20 нояб. 2018 г., 08:35
Попробуй, чтобы у меня получилось

была ли это ситуация с версией Roundcube от мая 12 года, но для текущей версии ответ заключается в том, что вы не можете удалитьroundcube_sessauth cookie из JavaScript, так как он помечен какHttpOnly. А это значит, что он недоступен из кода на стороне клиента JS и может быть удален только сценарием на стороне сервера или прямым действием пользователя (с помощью некоторых механизмов браузера, таких как встроенный отладчик или некоторый плагин).

// если передано exMins = 0, оно будет удалено, как только оно его создаст.

    var d = new Date();
    d.setTime(d.getTime() + (exMins*60*1000));
    var expires = "expires="+d.toUTCString();  
    document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}

setCookie('cookieNameToDelete','',0) // this will delete the cookie.
 Kishor Patil21 дек. 2016 г., 04:32
Да ... вместо этого переименуйте аргументы exdays в exMins .. спасибо # BhBh
 BHBH19 дек. 2016 г., 22:44
exMins не определен в этом примере, вы, вероятно, имели в виду exdays

по которому существует файл cookie, чтобы гарантировать удаление реального

function set_cookie(name, value) {
  document.cookie = name +'='+ value +'; Path=/;';
}
function delete_cookie(name) {
  document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
}

Если вы не указали путь, браузер установит cookie относительно страницы, на которой вы находитесь, поэтому, если вы удалите cookie, находясь на другой странице, другой cookie продолжит свое существование.

Редактировать на основе комментария Эвана Моррисона.
Помните, что в некоторых случаях для определения правильного файла cookie,Domainараметр @ тоже обязателен.
Обычно используется какDomain=.yourdomain.com
Период перед именем домена означает, что этот файл cookie может существовать в любом поддомене www также считается поддоменом).

Также, как упоминалось в ответе @ RobertT,HttpOnly куки не могут быть удалены с помощью JavaScript на стороне клиента.

 duyn9uyen12 сент. 2014 г., 20:05
Это сводило меня с ума! После того, как я добавил Path = /, я смог удалить. Благодарность
 Evan Morrison19 мая 2016 г., 02:01
Я не смог удалить cookie, пока не добавил путь и правильное значение «Домен =»; '... Итак, мое заявление было таким: document.cookie = "cookieName =; path = /; expires = Четверг, 01 января 1970 г. 00:00:01 GMT; домен = .myDomain.com"
 bobbyrne0125 мар. 2015 г., 13:38
то же самое, мне нужно 'path = /;' чтобы это работало.
 MaxPRafferty06 нояб. 2017 г., 22:05
Это решение все еще работает, но можно написать несколько более кратко с помощьюMax-Age=0, если тебя волнуют такие вещи.
 SuperMarco09 июн. 2015 г., 15:36
Это должен быть правильный ответ, он не работает безPath в большинстве случаев

Ваш ответ на вопрос