Pomocnik tagów obrazów w programie ASP.NET Core

Autor: Peter Kellner

Pomocnik tagów obrazów rozszerza tag w <img> celu zapewnienia zachowania buforowania dla plików obrazów statycznych.

Ciąg buforowania jest unikatową wartością reprezentującą skrót pliku obrazu statycznego dołączonego do adresu URL zasobu. Unikatowy ciąg monituje klientów (i niektórych serwerów proxy) o ponowne załadowanie obrazu z serwera internetowego hosta, a nie z pamięci podręcznej klienta.

Jeśli źródło obrazu (src) jest plikiem statycznym na serwerze internetowym hosta:

  • Unikatowy ciąg magistrali pamięci podręcznej jest dołączany jako parametr zapytania do źródła obrazu.
  • Jeśli plik na serwerze internetowym hosta ulegnie zmianie, zostanie wygenerowany unikatowy adres URL żądania, który zawiera zaktualizowany parametr żądania.

Aby zapoznać się z omówieniem pomocników tagów, zobacz Pomocnicy tagów na platformie ASP.NET Core.

Atrybuty pomocnika tagów obrazu

src

Aby aktywować pomocnik tagu obrazu, src atrybut jest wymagany w elemecie <img> .

Źródło obrazu (src) musi wskazywać fizyczny plik statyczny na serwerze. Jeśli element src jest zdalnym identyfikatorem URI, parametr ciągu zapytania buforowania nie jest generowany.

asp-append-version

Po asp-append-version określeniu true wartości wraz z atrybutem src wywoływany jest pomocnik tagu obrazu.

W poniższym przykładzie użyto pomocnika tagów obrazu:

<img src="~/images/asplogo.png" asp-append-version="true">

Jeśli plik statyczny istnieje w katalogu /wwwroot/images/, wygenerowany kod HTML jest podobny do następującego (skrót będzie inny):

<img src="/images/asplogo.png?v=Kl_dqr9NVtnMdsM2MUg4qthUnWZm5T1fCEimBPWDNgM">

Wartość przypisana do parametru v jest wartością skrótu asplogo.png pliku na dysku. Jeśli serwer internetowy nie może uzyskać dostępu do odczytu do pliku statycznego, żaden parametr nie v zostanie dodany do atrybutu src w renderowanych znacznikach.

Aby pomocnik tagów wygenerował wersję pliku statycznego poza wwwrootprogramem , zobacz Obsługa plików z wielu lokalizacji

Zachowanie buforowania skrótów

Pomocnik tagów obrazu używa dostawcy pamięci podręcznej na lokalnym serwerze internetowym do przechowywania obliczonego Sha512 skrótu danego pliku. Jeśli plik jest żądany wiele razy, skrót nie zostanie ponownie obliczony. Pamięć podręczna jest unieważniona przez obserwatora plików dołączonego do pliku po obliczeniu skrótu Sha512 pliku. Gdy plik zmieni się na dysku, jest obliczany i buforowany nowy skrót.

Dodatkowe zasoby