Das sogenannte Browser-Caching bedeutet, dass der Browser diese Webseiten lokal zwischen dem Browser auf eine Webseite zugreift. Wenn Sie beim nächsten Mal auf diese zwischengespeicherten Webseiten zugreifen, lesen der Browser den Inhalt dieser Webseiten direkt aus der Region, ohne sie aus dem Netzwerk erhalten zu müssen.
Obwohl die vom Browser bereitgestellte Caching-Funktion die Ladegeschwindigkeit von Webseiten effektiv verbessern kann, wirkt sich dieser Caching-Mechanismus für einige Webseiten, die Echtzeit-Updates erfordern, die normale Anzeige von Webseiten aus. Glücklicherweise gibt es drei Felder im HTTP -Antwortnachrichtenheader, um die Cache -Funktion des Clientbrowsers auszuschalten. Die folgenden drei Aussagen verwenden diese drei Felder, um den Cache des Browsers zu schließen:
Response.SetDateHeader ("läuft", 0); Antwort.Setheader ("Cache-Control", "No-Cache"); Antwort.Setheader ("Pragma", "No-Cache");Obwohl die oben genannten drei HTTP -Antwortmeldungsfelder den Browser -Cache schließen können. Allerdings unterstützen nicht alle Browser diese drei Reaktionsnachrichten -Headerfelder. Daher ist es am besten, die oben genannten Felder für drei Antwortnachrichten zu verwenden, um den Cache des Browsers zu schließen.
Beispiel: Deaktivieren Sie die Browser von Cache Cache aktuell Webseiten
1. Beispiel Beschreibung
Dieses Programm zeigt die Leistung beim Senden von Anforderungsnachrichten über das Formular, wenn der Browser -Cache nicht geschlossen ist und der Browser -Cache geschlossen ist.
2. Schreiben Sie eine Cache -Klasse
Der Browser -Cache wird mit den oben genannten drei Antwortmeldungs -Headerfeldern in der Cache -Klasse geschlossen und gibt einen HTML -Code an den Client aus, um den Effekt des Schließens des Cache und nicht des Cache zu testen. Der Implementierungscode der Cache -Klasse lautet wie folgt:
Public Class Cache erweitert HttpServlet {public void Service (httpServletRequest-Anforderung, httpServletResponse-Antwort). String cache = request.getParameter ("cache"); if (cache! response.setheader ("cache-control", "no-cache"); response.setheader ("pragma", "no-cache"); }} // HTML -Code -String html = "<Form ID = 'Form', action = 'test' methode = 'post'>" + "name: <input type = 'text' name = 'name'/>" + "<input type = 'value =' sure '/>" + "</Form>"; Printwriter out = response.getWriter (); out.println (html); // HTML -Code an den Client}} ausgebenWie aus dem obigen Code ersichtlich ist, wird der Cache des Browsers geschlossen, wenn der Parameterwert der Cache -Anforderung falsch ist.
3. Konfigurieren Sie die Cache -Klasse
Der Konfigurationscode der Cache -Klasse lautet wie folgt:
<servlet> <servlet-name> cache </servlet-name> <servlet-class> Kapitel5.cache </Servlet-Class> </Servlet> <Servlet-Mapping> <Servlet-Name> Cache </Servlet-name> <URL-PATTERN>/Cache </url-patter> </servlet-mapping>
4. Testen Sie die Situation, in der der Browser -Cache nicht geschlossen ist
Geben Sie die folgende URL in die Browser -Adressleiste ein:
http: // localhost: 8080/Demo/cache? cache = true
Geben Sie eine Zeichenfolge in das Textfeld [Name] ein und klicken Sie auf die Schaltfläche [Senden]. Zu diesem Zeitpunkt zeigt der Browser eine Ausnahme an (diese Ausnahme wird durch den nicht vorhandenen Test verursacht, der nicht vorhanden ist. Daher müssen wir uns keine Sorgen darüber machen) und klicken Sie dann auf die Schaltfläche der Browser -Rückgabe, um zu der Seite zurückzukehren, auf der die Daten gerade eingegeben wurden. Wir können sehen, dass die gerade jetzt noch vorhandene Zeichenfolge vorhanden ist. Dies bedeutet, dass der Browser bei der Rückkehr die Seite nicht vom Server zurückgibt, sondern die aktuelle Seite aus dem lokalen Cache neu lädt.
5. Testen Sie die Situation des Schließens des Browser -Cache
Geben Sie die folgende URL in die Browser -Adressleiste ein, um den Browser -Cache zu schließen:
http: // localhost: 8080/Demo/cache? cache = false
Senden und kehren Sie im vorherigen Schritt zurück und stellten fest, dass die gerade jetzt eingegebenen Daten verschwunden waren. Dies bedeutet, dass der Browser nach dem Schließen des Browser -Cache immer die aktuelle Seite vom Server zurückgeführt wird, wenn er zurückgibt. Daher behält die aktuelle Seite immer den Anfangswert bei.
6. Verfahrenszusammenfassung
Beim Schließen von Browser -Cache, um sicherzustellen, dass er in den meisten Browsern so weit wie möglich wirksam ist, empfehle ich die Verwendung der oben genannten drei HTTP -Antwortmeldungsfelder, um den Browser -Cache gleichzeitig zu schließen.
Zusammenfassen
Die oben genannte Methode von Javaweb, das Browser verbietet, aktuelle Webseiten zu unterbrechen. Ich hoffe, es wird für alle hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Editor wird allen rechtzeitig antworten. Vielen Dank für Ihre Unterstützung auf der Wulin.com -Website!