Warum kann ich diesen Cookie nicht löschen?

7

Okay, hier ist die 411 - Ich habe den folgenden Event-Handler in meiner Global.asax.cs-Datei:

%Vor%

Dieser Handler wird während Ajax-Anfragen (als Ergebnis des von mir verwendeten Ajax-Frameworks) sowie zu anderen Zeiten ausgeführt - die Bedingung der if-Anweisung filtert nicht-Ajax-Ereignisse heraus und funktioniert gut (es ist nicht 't relevant hier, so habe ich es aus Gründen der Kürze nicht aufgenommen.)

Es genügt uns zu sagen, dass dies gut funktioniert - der Cookie ist gesetzt, ich kann ihn auf dem Client lesen, und alles ist bis zu diesem Punkt gut.

Nun zu dem Teil, der mich verrückt macht.

Hier ist die JavaScript-Funktion, die ich benutze, um den Cookie zu löschen:

%Vor%

Natürlich lösche ich es irgendwann nach dem Setzen des Cookies wie folgt:

%Vor%

Nur, das macht die Arbeit nicht; der Cookie existiert noch. Also, weiß jemand warum?

    
Jason Bunting 11.09.2008, 05:42
quelle

8 Antworten

8

Sie müssen Ihren Cookie im selben Pfad löschen, in dem Sie ihn erstellt haben. Erstellen Sie also Ihr Cookie mit Pfad = / und delute es mit Pfad = / auch ..

    
Andreas Petersson 02.10.2008 16:25
quelle
4
  • Haben Sie die clientseitigen und serverseitigen Cookie-Domänen und Pfade überprüft, um sicherzustellen, dass sie identisch sind?
  • Ist ein Cookie sicher und der andere nicht?
  • Ansonsten würde ich Probleme mit der Zeitsynchronisation zwischen Server und Client vermuten, wie Erlend es vorschlägt.
Robert J. Walker 11.09.2008 16:05
quelle
2

Haben Sie versucht, "; abläuft = Do, 01-Jan-1970 00:00:01 GMT" zu verwenden?

    
Erlend 11.09.2008 10:55
quelle
2

Seltsam .. Der Code, den Sie eingefügt haben, ist fast wortwörtlich: Ссылка was gut funktioniert ..

Ich weiß, dass Sie Ajax verwenden, aber haben Sie es schnell versucht es auf den serverseitigen Code zu stossen, um zu sehen, ob das funktioniert ? Dies kann helfen herauszufinden, ob es ein Problem mit dem JS oder etwas anderem ist (z. B. Mystery File Locking auf dem Cookie)?

Aktualisieren

Ich hatte gerade ein schnelles Google, es sieht so aus, als könnte es Probleme mit den Browsereinstellungen geben. Ich glaube nicht, dass Ihr Problem hier der Code ist, es ist eher etwas anderes. Ich würde vorschlagen, versuchen Sie das oben als PoC und wir können von dort aus bewegen. :)

    
Rob Cooper 11.09.2008 11:21
quelle
2

Ich habe vor einer Woche auf meinem Blog einen Cookie von js gepostet. Dies hat bei allen "A Grade" -Browsern funktioniert.

%Vor%     
Ricky 11.09.2008 14:46
quelle
1

Auch wenn eine Cookie-Domäne während der Erstellung angegeben wurde, habe ich festgestellt, dass Sie auch die Cookie-Domäne angeben müssen, während Sie versuchen, sie zu löschen (ablaufen).

    
just.jimmy 15.09.2010 01:26
quelle
0

Sind wir sicher, dass es keinen Code gibt, der den Cookie auf HttpOnly setzt (oben fehlt nichts)? Die HttpOnly-Eigenschaft verhindert, dass (moderne) Browser den Cookie ändern. Es würde mich interessieren zu sehen, ob Sie es Server-Seite töten können, wie Rob es vorschlägt.

    
Tyler 13.09.2008 07:22
quelle
0

Ich nehme an, dass Sie dieses Javascript auf der Browserseite aufrufen. Welchen Browser benutzen Sie, wie sehen Sie den Cookie, um zu bestätigen, dass er noch da ist?

    
benc 02.10.2008 16:15
quelle

Tags und Links