Wie kann ich ein bestimmtes Cookie mit dem Namen löschen roundcube_sessauth
?
Sollte nicht folgendes sein:
function del_cookie(name) {
document.cookie = 'roundcube_sessauth' +
'=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
}
Und dann:
<a href="javascript:del_cookie(name);">KILL</a>
Den roundcube_sessauth
Keks töten ?
javascript
cookies
Charlie
quelle
quelle
name
? Was ist der Sinn davon? Oder handelt es sich um einen Kater aus einer vielseitigeren Version, mit der Sie den Cookie-Namen angeben können?How can I delete a
specific
cookie
Antworten:
Sie sollten den Pfad definieren, in dem das Cookie vorhanden ist, um sicherzustellen, dass Sie das richtige Cookie löschen.
Wenn Sie den Pfad nicht angeben, setzt der Browser ein Cookie relativ zu der Seite, auf der Sie sich gerade befinden. Wenn Sie das Cookie auf einer anderen Seite löschen, bleibt das andere Cookie bestehen.
Bearbeiten Sie basierend auf dem Kommentar von @Evan Morrison.
Beachten Sie, dass in einigen Fällen der
Domain
Parameter erforderlich ist , um das richtige Cookie zu identifizieren .Normalerweise ist es definiert als
Domain=.yourdomain.com
.Wenn Sie einen Punkt vor Ihren Domain-Namen setzen, kann dieses Cookie in jeder Sub-Domain vorhanden sein (gilt
www
auch als Sub-Domain).Wie in der Antwort von @ RobertT erwähnt, können
HttpOnly
Cookies auf der Clientseite nicht mit JavaScript gelöscht werden.quelle
Path
in den meisten Fällen nicht funktioniert .Max-Age=0
, wenn Sie sich für solche Dinge interessieren.Um ein Cookie zu löschen, setzen Sie das
expires
Datum auf etwas in der Vergangenheit. Eine Funktion, die dies tut, wäre.Dann löschen Sie
roundcube_sessauth
einfach ein Cookie mit dem Namen do.quelle
path=/
Schlüssel ist wichtig für die Browserkompatibilität.// Wenn exMins = 0 übergeben wird, wird es gelöscht, sobald es erstellt wird.
quelle
Ich bin mir nicht sicher, ob dies bei der Roundcube-Version vom 12. Mai der Fall war, aber für die aktuelle Version lautet die Antwort, dass Sie keine
roundcube_sessauth
Cookies aus JavaScript löschen können , da diese als gekennzeichnet sindHttpOnly
. Dies bedeutet, dass auf den clientseitigen JS-Code nicht zugegriffen werden kann und dass er nur durch ein serverseitiges Skript oder durch direkte Benutzeraktionen (über einige Browsermechaniken wie den integrierten Debugger oder ein Plugin) entfernt werden kann.quelle
Sie können diese Lösung ausprobieren
quelle
In meinem Fall habe ich Blowcode für verschiedene Umgebungen verwendet.
quelle