Ich weiß, dass diese Frage mehrmals gefragt wird. Aber mir ist das Konzept noch nicht klar. Nach der Lektüre viele Blogs und Antworten in so etwas ist, ich habe sagen, es ist alsoWas ist der Unterschied zwischen Etag und Expires-Header?
Expiry headers are used when you don’t even want client (and proxies/caches) to make a request to
the server. In ETAG, the client will check with the server for the update, but in expiry
headers, the client will know, when to expire the file and check for an update, till then it
(browsers and proxies/caches) won’t bother server for checking the update.
im Grunde, wenn wir max-age-Header verwenden abläuft /, Es wird für den Server für eine aktualisierte Datei nicht einmal überprüfen. Also dachte ich mir, es lokal zu testen.
Also habe ich auf einfache HTML-Datei einschließlich 2 JS-Dateien und 1 Bilddatei erstellt. In IIS habe ich den Expires-Header für den Image-Ordner auf 2 Tage festgelegt. Also nach meinem Verständnis, nachdem die Image-Datei einmal vom Server, für die nächste Anfrage, sollte es keine Anfrage an den Server senden, um zu überprüfen, ob die Image-Datei geändert wird oder nicht.
Aber was ich bekam, ist jedes Mal, wenn ich die Seite aktualisieren, sehe ich eine Anfrage an den Server gesendet und der Server gibt einen 304 not modified
Status zurück. Aber nach den Spezifikationen/Blogs lese ich Es sollte keine Anfrage an den Server senden.
Jemand bitte erklären.