2013-04-04 4 views
49

Wie vollständig localstorage, sessionStorage und cookies in Javascript zu löschen?wie lokales Speicher, SessionStorage und Cookies in Javascript löschen? und dann abrufen?

Gibt es eine Möglichkeit, diese Werte zurück zu bekommen, nachdem sie gelöscht wurden?

+1

Das sind wahrscheinlich 3 verschiedene Fragen. Haben Sie nach Lösungen für jeden von ihnen gesucht? –

+0

Ja natürlich. und ich möchte wissen, gibt es eine Möglichkeit, einen Wert zu erhalten, nachdem der Wert – Gowsikan

+2

@dystroy Ich stimme nicht zu, es könnte gekapselt werden als "wie alle Client-Speicher löschen". –

Antwort

1

Es gibt keine Möglichkeit, localStorage-, sessionStorage- oder Cookie-Werte über JavaScript im Browser abzurufen, nachdem sie mit Javascript gelöscht wurden.

Wenn Sie wirklich fragen, ob es einen anderen Weg (von außerhalb des Browsers) gibt, um diese Daten wiederherzustellen, ist das eine andere Frage und die Antwort wird vollständig von dem spezifischen Browser abhängen und wie er den Speicher implementiert jeder dieser Arten von Daten.

Zum Beispiel speichert Firefox Cookies als einzelne Dateien. Wenn ein Cookie gelöscht wird, wird seine Datei gelöscht. Das bedeutet, dass der Cookie nicht mehr über den Browser erreichbar ist. Aber wir wissen, dass von außerhalb des Browsers mithilfe von Systemtools manchmal der Inhalt gelöschter Dateien abgerufen werden kann.

Wenn Sie dies weiter untersuchen möchten, müssen Sie herausfinden, wie jeder Browser jeden Datentyp auf jeder Plattform von Interesse speichert und dann untersuchen, ob dieser Speichertyp eine Wiederherstellungsstrategie hat.

0

Der Standard Web Storage, sagt nichts über die Wiederherstellung von diesen. So wird es keinen Standard Weg geben, es zu tun. Sie müssen die Art und Weise, wie die Browser diese implementieren, oder einen Weg finden, diese zu sichern, bevor Sie sie löschen.

138

, wie man ganz klar local

localStorage.clear(); 

, wie man ganz klar session

sessionStorage.clear(); 

[...] Cookies?

var cookies = document.cookie; 

for (var i = 0; i < cookies.split(";").length; ++i) 
{ 
    var myCookie = cookies[i]; 
    var pos = myCookie.indexOf("="); 
    var name = pos > -1 ? myCookie.substr(0, pos) : myCookie; 
    document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT"; 
} 

ist es eine Möglichkeit, den Wert zurück, nachdem klar diese zu bekommen?

Keine, gibt es nicht. Aber Sie sollten sich nicht darauf verlassen, wenn dies mit einer Sicherheitsfrage zusammenhängt.

Verwandte Themen