Schrift
[thread]1291[/thread]

Cookies löschen ...: ... aber nicht alle

Leser: 1


<< >> 3 Einträge, 1 Seite
MartinR
 2007-01-23 12:59
#11816 #11816
User since
2004-06-17
305 Artikel
BenutzerIn
[default_avatar]
Hi,

vielleicht weiß ja jemand wie es geht.

Wie kann ich (im IE7 oder Firefox) Cookies löschen? Und zwar alle - bis auf einige, wenige bestimmte (wie z.B. das Cookie, welches mich hier im Forum angemeldet lässt).

Gibts da AddOns oder sonstige Kniffe?
nepos
 2007-01-23 13:26
#11817 #11817
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Also im Firefox: Options -> Privacy -> Show Cookies
Da kannst du die auch Löschen.
Ein sehr nettes Addon in dem Zusammenhang wäre auch CookieSafe. Damit kann man auch genau regeln, wer welche Cookies bei dir speichern darf.
murphy
 2007-01-23 15:10
#11818 #11818
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
Man kann natürlich in den meisten Browsern im Cookie-Manager die Cookies von Hand einzeln löschen. Wenn der Filter, den Du anwenden möchtest aber relativ gut programmatisch beschreibbar ist, dann kannst Du es bei Mozilla basierten Browsern zum Beispiel auch wie folgt per JavaScript erledigen:

* Öffne den Venkman JavaScript-Debugger (Im SeaMonkey über das Menü unter Tools > Webentwicklung > JavaScript Debugger zu erreichen -- Firefox habe ich gerade nicht zur Hand) um privilegierte JavaScript-Befehle interaktiv ausführen zu können.

* Gib folgendes (außer den Kommentaren ;-) nacheinander in die JavaScript Kommandozeile ein:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Eine Prüffunktion definieren -- hier löschen wir alles, was nicht von
// perl-community.de kommt:
var sd = function (ck) { return !ck.host.match(/perl-community\.de$/); };

// Die relevanten XPCOM-Schnittstellendefinitionen laden:
var ICookieManager = Components.interfaces.nsICookieManager;
var ICookie = Components.interfaces.nsICookie;

// Das Cookiemanager-Objekt auslesen und den JavaScript-Wrapper
// des zurückgegebenen Objektes an die korrekte XPCOM-Schnittstelle binden:
var cm = Components.classes["@mozilla.org/cookiemanager;1"].getService().QueryInterface(ICookieManager);

// Einen Cache für die zu löschenden Cookies anlegen:
var dc = [];

// Einen Enumerator über alle Cookies holen:
var ce = cm.enumerator;

// Alle Cookies durchlaufen und die zu löschenden speichern:
while (ce.hasMoreElements()) { if (sd(ce.getNext().QueryInterface(ICookie))) dc[dc.length] = ck; }

// Alle zu löschenden Cookies tatsächlich wegwerfen:
for (var i in dc) { var ck = dc[i]; cm.remove(ck.host, ck.name, ck.path, false); }


Und schon sind sie weg...

Weitere Informationen finden sich in der Dokumentation der XPCOM-Schnittstellen nsICookieManager und nsICookie...
When C++ is your hammer, every problem looks like your thumb.
<< >> 3 Einträge, 1 Seite



View all threads created 2007-01-23 12:59.