Wie löscht man mit JavaScript alle Cookies für die aktuelle Domain?
Antworten
Zu viele Anzeigen?Eine Antwort, die sowohl von der zweiten Antwort hier als auch von W3Schools beeinflusst wurde
document.cookie.split(';').forEach(function(c) {
document.cookie = c.trim().split('=')[0] + '=;' + 'expires=Thu, 01 Jan 1970 00:00:00 UTC;';
});
Scheint zu funktionieren
edit: wow fast genau das gleiche wie Zach's interessant, wie Stack Overflow sie nebeneinander gestellt hat.
edit: nvm das war offenbar nur vorübergehend
Wenn Sie die Cookies nur auf einem gesicherten Server löschen möchten, können Sie die Option Cookie-Speicher-API und es ist .delete() Methode.
cookieStore.getAll().then(cookies => cookies.forEach(cookie => {
console.log('Cookie deleted:', cookie);
cookieStore.delete(cookie.name);
}));
Besuchen Sie die caniuse.com Tabelle für die Cookie-Speicher-API um zu prüfen, ob Browserunterstützung .
Wenn Sie Zugang zum jquery.cookie Plugin, können Sie auf diese Weise alle Cookies löschen:
for (var it in $.cookie()) $.removeCookie(it);
Soweit ich weiß, gibt es keine Möglichkeit, alle auf der Domäne gesetzten Cookies pauschal zu löschen. Sie können ein Cookie löschen, wenn Sie den Namen kennen und sich das Skript auf derselben Domäne befindet wie das Cookie.
Sie können den Wert auf leer und das Verfallsdatum auf einen Zeitpunkt in der Vergangenheit setzen:
var mydate = new Date();
mydate.setTime(mydate.getTime() - 1);
document.cookie = "username=; expires=" + mydate.toGMTString();
Es gibt eine ausgezeichneter Artikel hier zur Manipulation von Cookies mit Javascript.