Создание etags для изображений в asp.net? - PullRequest
3 голосов
/ 26 октября 2011

На моем сайте пользователи могут загружать изображения, которые отображаются публично.Когда пользователь загружает новое изображение, оно перезаписывает одно из своих старых изображений.

Поскольку изображения могут быть большими, я хочу, чтобы они кэшировались.Однако, когда пользователь загружает новое изображение, старые кэшированные изображения не должны использоваться.

Источник динамических изображений выглядит следующим образом:

userImage.ashx?id=f488b864-0a0b-46d9-af4a-a43cd0dcf751&type=micrositePhoto

Таким образом, я могу вставить заголовки вответ в файле .ashx, если мне нужно.

Мне сказали использовать etags для этой цели, но я не знаю, как это сделать в asp.net,Файлы .js и .css на моем сайте уже имеют etags, но я не знаю, что их генерирует.Кроме того, любые встроенные системы для генерации etags, вероятно, не поймут, как работает мой файл .ashx.

Как мне сгенерировать etags для своего сайта и сделать так, чтобы они работали так, как предполагалось?1016 *

1 Ответ

1 голос
/ 26 октября 2011

Считает, что вы должны быть в состоянии сделать, например:

Response.AddHeader("ETag","\"" + Guid.NewGuid().ToString() + "\"");

ETag должны быть заключены в "

ПРИМЕЧАНИЕ Очевидно, что когда ETag возвращается с изображением, он должен быть таким же при последующих запросах. Мой код выше был просто доказательством концепции. :)

Редактировать: Да, только что проверил и подтвердил с помощью Firebug, что заголовки ответа содержат созданный мной Guid.

...