Wie um zu verhindern, dass die Inhalte angezeigt, die von Back-Forward-cache in Firefox?

Browser: Firefox 6.0

Habe ich Seite A mit den folgenden Einstellungen, um sicherzustellen, dass der Inhalt NICHT gespeichert wird, in der bfcache der browser:

1) $(window).unload(function(){});

2) Folgende HTTP-Header:

<meta http-equiv="pragma" content="no-cache" /> 
<meta http-equiv="expires" content="-1" />
<meta http-equiv="cache-control" content="no-cache"/>

Habe ich auch angeschlossen die Ereignisse pagehide und pageshow. Wenn ich die Navigation von der Seite Weg, pagehide ist aufgerufen, mit den RICHTIGEN Wert für die Ereignis-Eigenschaft persisted = false (das ist das, was benötigt wird: keine Persistenz im cache!)

Navigation nach ein paar Seiten habe ich ein window.history.go(-2); zurück zur Seite A. An dieser Stelle, möchte ich von Firefox auf den server abfragt, für die aktualisierte version anstelle der Anzeige aus dem cache. Die pageshow von Seite A aufgerufen wird, mit RICHTIGEN Wert für die Ereignis-Eigenschaftpersisted = false (d.h. die Seite wird NICHT geladen, aus dem cache). ABER der Seiteninhalt wird nicht die server-Daten; es ist der veraltete Inhalte (gleiche wie bei der Navigation von der Seite Weg zunächst)! Fiddler auch nicht zeigen, eine neue Anfrage an den server.

Google Chrome zeigt auch das gleiche Verhalten. IE wie erwartet funktioniert (lädt neue Daten)!

Irgendeine Idee, was bin ich?

Vielen Dank im Voraus!

InformationsquelleAutor Venkat | 2011-08-30
Schreibe einen Kommentar