2012-04-13 5 views
1

Ich optimiere meine Webseite, indem ich Caching implementiere. Wenn ich also möchte, dass der Browser keine Daten aus dem Cache übernimmt, werde ich eine dynamische Zahl als Abfragewert anhängen.URL mit Fragezeichen als neue HTTP-Anfrage betrachtet?

zB: google.com?val=823746

Aber einige Zeit, wenn ich aus dem Cache für die unter URL bringen Daten wollen, wird der Browser eine neue HTTP-Anforderung an den Server zu machen, es ist nicht unter Daten aus dem Cache. Ist das wegen des Fragezeichens in URL?

zBhttp://google.com?

Bitte geben Sie einen Link zum Referenzdokument an.

Vielen Dank im Voraus.

Regards, Navin

Antwort

1

Verwendung geeignete HTTP-Header. Suche pragma: no-cache und Expires

Browser möglicherweise nicht Cache-URLs, die eine Abfrage-Zeichenfolge (Teil nach ?) enthalten, es sei denn die Header der Ablaufzeit explizit angeben.

Die Cache-Richtlinie ist nicht in allen Browsern gleich. Wenn Sie keine geeigneten Header angeben, sind die Ergebnisse möglicherweise noch unberechenbarer.

Da Abfragezeichenfolgen mit dynamisch generierten Seiten verwendet werden, kann der Browser diesen Hinweis übernehmen und eine neue Anforderung auslösen, selbst wenn die Abfragezeichenfolge identisch ist. Zum Beispiel kann ein Desktop-Browser Fehler machen und eine neue Anfrage auslösen. Auf der anderen Seite kann ein mobiler Browser mit aggressiver Cache-Richtlinie die Seite aus dem Cache ziehen.

+1

danke für die Antwort, meine Sorge ist nur mit dem Fragezeichen, nicht die Strings danach. Also Hauptszenario ist die URL ohne Abfragewert, aber die URL hat? Kennzeichen. Und ja, der HTTP-Header ist in Ordnung –

+1

Nun eigentlich Anwesenheit von? Alleine kann als Vorhandensein eines leeren Abfrage-Strings genommen werden. – Dojo

+1

danke @Priyank, hast du irgendwelche Referenz doc, so dass ich durch ... gehen kann –

Verwandte Themen