Gibt es eine Möglichkeit, eine Verknüpfung zu einer URL zu erstellen, die den Browser zwingt, jeden Cache zu ignorieren, der für diese URL möglicherweise vorhanden ist?
Wir haben einige Webseiten, die sich nach buchstäblich Jahren statischen Inhalts geändert haben. Benutzer klicken auf Verknüpfungen, Favoriten oder geben URLs zu diesen Websites ein und erhalten alten, zwischengespeicherten Inhalt. Ich hätte gerne eine Seite mit einem Link, der zur selben URL führt, aber den Browser zwingt, den neuen Inhalt zu bekommen.
ist das möglich? Cross-Browser?
Sie können das systematisch tun, indem Sie Daten oder Zeitstempel oder Versionsnummern verwenden oder wahllos Sitcoms, Muppets, Bergketten und kleine Säugetiere verwenden.
Fügen Sie am Ende der href einen URL-Parameter mit einem eindeutigen Wert hinzu, z. B. new Date (). getTime ():
%Vor% Wenn ich die Seite vollständig aktualisieren muss, füge ich einfach ?v=
gefolgt von einer zufälligen Zeichenkette hinzu. Wenn ein Browser eine Abfragezeichenfolge nach einer Seite erkennt, wird der Cache automatisch umgangen (wenn dieselbe Abfragezeichenfolge in der zwischengespeicherten Version nicht vorhanden ist), da sich der Inhalt der Seite abhängig vom Wert der Abfragezeichenfolge ändern kann.
Da eine Webseite mehr als einmal pro Sekunde neu geladen werden kann, verwende ich den aktuellen UNIX-Zeitstempel, gefolgt von einem Buchstaben und einer Zufallszahl zwischen 1 und 1000.
Die Wahrscheinlichkeit, dass zwei Seiten genau dieselbe Abfragezeichenfolge erhalten, liegt nahe bei null.
Viele Leute verwenden einen Versionsabfragezeichenfolgenparameter.
Sieh dir die SO-Quelle an
%Vor%Beachten Sie insbesondere master.js? v = 4143
Persönlich habe ich dies in meiner Konfigurationsdatei festgelegt, die anwendungsweit ist, aber ich glaube, Sie können dies in Ihrer Quellcodeverwaltung tun, wenn Sie eine detailliertere automatische Versionierung benötigen.
HTML-Link, der eine Aktualisierung mit JavaScript erzwingt:
%Vor%