Image-Taghilfsprogramm in ASP.NET Core
Von Peter Kellner
Das Image-Taghilfsprogramm optimiert das <img>
-Tag für die Bereitstellung des Cache-Busting-Verhaltens bei statischen Bilddateien.
Eine Cache-Busting-Zeichenfolge ist ein eindeutiger Wert, der den Hash der statischen Bilddatei darstellt, der an die Asset-URL angefügt ist. Die eindeutige Zeichenfolge fordert Clients (und einige Proxys) auf, das Bild erneut vom Hostwebserver zu laden, und nicht über den Cache des Clients.
Wenn es sich bei der Bildquelle (src
) um eine statische Datei auf dem Hostwebserver handelt, gilt Folgendes:
- Eine eindeutige Cache-Busting-Zeichenfolge wird als Abfrageparameter an die Bildquelle angefügt.
- Eine eindeutige Anforderungs-URL wird erstellt, die den aktualisierten Anforderungsparameter enthält, wenn die Datei auf dem Hostwebserver geändert wird.
Eine Übersicht über Taghilfsprogramme finden Sie unter Taghilfsprogramme in ASP.NET Core.
Attribute von Image-Taghilfsprogrammen
src
Um das Image-Taghilfsprogramm zu aktivieren, wird das src
-Attribut im Element <img>
benötigt.
Die Bildquelle (src
) muss auf eine physische statische Datei auf dem Server verweisen. Wenn src
ein Remote-URI ist, wird nicht der Parameter für die Cache-Busting-Abfragezeichenfolge generiert.
asp-append-version
Wenn asp-append-version
zusätzlich mit einem true
-Wert sowie einem src
-Attribut angegeben wird, wird das Image-Taghilfsprogramm aufgerufen.
Im folgenden Beispiel wird ein Image-Taghilfsprogramm verwendet:
<img src="~/images/asplogo.png" asp-append-version="true">
Wenn die statische Datei im Verzeichnis /wwwroot/images/ vorhanden ist, ähnelt der erstellte HTML-Code folgendem (der Hash wird abweichen):
<img src="/images/asplogo.png?v=Kl_dqr9NVtnMdsM2MUg4qthUnWZm5T1fCEimBPWDNgM">
Der dem v
-Parameter zugewiesene Wert entspricht dem Hashwert der Datei asplogo.png
auf dem Datenträger. Wenn der Webserver den Lesezugriff auf die statische Datei, auf die verwiesen wird, nicht erhalten kann, werden im gerenderten Markup keine v
-Parameter dem Attribut src
zugefügt.
Informationen darüber, wie ein Taghilfsprogramm eine Version für eine statische Datei außerhalb von „wwwroot
“ generiert, finden Sie unter Bereitstellen von Dateien von mehreren Speicherorten.
Hashverhalten beim Zwischenspeichern
Das Image-Taghilfsprogramm verwendet den Cacheanbieter auf dem lokalen Webserver, um den berechneten Sha512
-Hash einer angegebenen Datei zu speichern. Wenn die Datei mehrmals angefordert wird, wird der Hash nicht neu berechnet. Der Cache wird durch einen Datei-Watcher ungültig gemacht, der an die Datei angefügt wird, wenn der Sha512
-Hash der Datei berechnet wird. Wenn die Datei auf dem Datenträger geändert wird, wird ein neuer Hash berechnet und zwischengespeichert.
Zusätzliche Ressourcen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für