|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
На сайте используется IHttpHandler отдающий клиенту картинки из БД. Что нужно сделать с хедерами чтобы броузер проверял запрашивал только хедера для таких картинок и если дата не изменилась, чтобы саму картинку не запрашивал у сервера, а брал ее со своего кеша? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 14:51 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
voodoos, https://metanit.com/sharp/mvc5/20.1.php https://developer.mozilla.org/ru/docs/Web/HTTP/Кэширование ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 17:28 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 19:18 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
voodoos На сайте используется IHttpHandler отдающий клиенту картинки из БД. Что нужно сделать с хедерами чтобы броузер проверял запрашивал только хедера для таких картинок и если дата не изменилась, чтобы саму картинку не запрашивал у сервера, а брал ее со своего кеша? Если у вас есть дата изменения картинки, то Cache-Control: private и в нужном формате Last-Modified . Клиент начнёт передавать вам заголовок If-Modified-Since и вам надо будет сравнить его значение с датой последних изменений файла, и если их не было, то вернуть ответ 304 Not Modified (с пустым телом), указывая, таким образом, чтобы браузер взял копию из кеша. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 13:46 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
[quot Дмитрий Мух#22140472] voodoos Если у вас есть дата изменения картинки Да, есть, спасибо! Спасибо всем, завтра буду разбираться… ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2020, 04:09 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
Добавил в хандлере вот такую хрень: Код: c# 1. 2.
Стал кешировать. Но при изменении даты обновления картинки берутся все равно из кеша… :( ... |
|||
:
Нравится:
Не нравится:
|
|||
29.05.2020, 23:51 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
voodoos, как сделали, так и работает... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 01:44 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
Дмитрий Мух, Я вообще так понял, что если уж клиенту отправляется Last-Modified, то при первой загрузке картинки это значение должно запоминаться, если оно при последующих запросах не меняется, то броузер должен брать картинку из кеша, но если оно в последующем меняется на большую дату, то в этом случае картинка должна браться не из кеша, а с сервера. Не так? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 01:10 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
voodoos, Last-Modified на принятие решения браузером, откуда брать картинку не влияет. В общем, вы так и не почитали ссылки, которые вам кинули, а Дмитрий оказал вам по большему счёту медвежью услугу )) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 03:55 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
hVostt voodoos, Last-Modified на принятие решения браузером, откуда брать картинку не влияет. В общем, вы так и не почитали ссылки, которые вам кинули, а Дмитрий оказал вам по большему счёту медвежью услугу )) Да, нужно признаться, что я действительно особо пока по ссылкам не читал, т.к. пока времени просто не было. ))) UPD: А как выясняется, я еще и пост Дмитрия невнимательно прочитал… ))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 12:35 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
voodoos UPD: А как выясняется, я еще и пост Дмитрия невнимательно прочитал… ))))) Дмитрий даёт вам решение конкретного кейса, но вам желательно разобраться как это работает в целом, так как вы просто вслепую выполнили данные инструкции и не получили нужного результата, так как немного нехватает понимания сути. Да, вы забыли про private, но всё же лучше почитать, это же как минимум интересно и полезно ) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 14:02 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
voodoos Дмитрий Мух, Я вообще так понял, что если уж клиенту отправляется Last-Modified, то при первой загрузке картинки это значение должно запоминаться, если оно при последующих запросах не меняется, то броузер должен брать картинку из кеша, но если оно в последующем меняется на большую дату, то в этом случае картинка должна браться не из кеша, а с сервера. Не так? Очень странно вы поняли то, что я написал. Повторю: Клиент начнёт передавать вам заголовок If-Modified-Since и вам надо будет сравнить его значение с датой последних изменений файла, и если их не было, то вернуть ответ 304 Not Modified (с пустым телом), указывая, таким образом, чтобы браузер взял копию из кеша. По сути при последующем запросе за картинкой вас спросят: А менялся-ли файл после такой-то даты ( If-Modified-Since )? Вы должны сравнить эту дату с датой последнего изменения файла. И если он не менялся, то ответить: Нет, не менялся ( 304 Not Modified ). Тогда браузер возьмёт его из кэша. Иначе вы просто должны отдать файл и новую дату Last-Modified . ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 15:19 |
|
Как заставить броузер кешировать картинки выдаваемые клиенту хандлером из базы?
|
|||
---|---|---|---|
#18+
hVostt voodoos, Last-Modified на принятие решения браузером, откуда брать картинку не влияет. В общем, вы так и не почитали ссылки, которые вам кинули, а Дмитрий оказал вам по большему счёту медвежью услугу )) Надеялся, что человек за ответами на вопросы сходит в документацию. И в очередной раз убедился, что так мало кто делает из молодых разработчиков. Им подавай развёрнутое объяснение сразу и на первой странице. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.06.2020, 15:21 |
|
|
start [/forum/topic.php?fid=18&fpage=7&tid=1354676]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
59ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
others: | 230ms |
total: | 389ms |
0 / 0 |