Ви повинні визначити шлях, на якому існує файл cookie, щоб переконатися, що ви видаляєте правильний файл 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 продовжує своє існування.
Редагувати на основі коментаря @Evan Morrison
Майте на увазі, що в деяких випадках для ідентифікації правильного файлу cookie необхідний Domain
параметр.
Зазвичай він визначається як Domain=.yourdomain.com
.
Розміщення крапки перед вашим доменним іменем означає, що цей файл cookie може існувати на будь-якому субдомені ( www
також вважається субдоменом).
Також, як зазначено у відповіді @ RobertT, HttpOnly
файли cookie не можуть бути видалені за допомогою JavaScript на стороні клієнта.
name
? У чому сенс цього? Або це похмілля з більш універсальної версії, яка дозволяє вказати ім’я файлу cookie?