2016-08-16 4 views
3

У меня есть приложение ASP.Net Web Forms. Сообщение в блоге "CacheCow Series - Part 0: Getting started and caching basics" упоминает, что Output Caching использует HttpRuntime.Cache за сценой -это не HTTP caching. Запрос поступает на сервер, а кешированный ответ отправляется с сервера (когда действительный кешированный выход на сервере). Таким образом, весь контент отправляется через провод.Есть ли Http-кэширование для веб-форм ASP.Net?

Существует ли HTTP-кеширование для веб-форм ASP.Net (где контент ответа не отправляется с сервера, если кеш действителен, но клиент берет его из своего HTTP-кэша после получения информации о достоверности (только) из сервер)?

ЛИТЕРАТУРА

  1. Is page output cache stored in ASP.NET cache object?
  2. Things Caches Do - Ryan Tomayko - 2ndscale.com/
+0

Больше ссылка: [HOW-TO: HTTP кеширования успокоительных и HyperMedia АПИС] (http://www.apiacademy.co/how-to-http-caching-for-restful-hypermedia-apis/) – Lijo

+0

И http://stackoverflow.com/questions/945898/cache-control-headers-in- asp-net – Lijo

ответ

1

На самом деле OutputCache directive используется как для Клиента как на стороне сервера кэширования. Когда вы устанавливаете Location этой директивы Any, Client, Downstream или ServerAndClient, правильные заголовки ответа кеша установлены так, что браузеры или прокси не будут запрашивать одну и ту же страницу снова и обслуживать кешированную версию вашей страницы. Но имейте в виду, что эти клиенты могут снова запросить эти страницы.

варианты Место с их заголовками Cache-Control после установки директивы: <%@ OutputCache Location="XXX" Duration="60" VaryByParam="none" %>

  • Client: частный, макс возраста = 60
  • Downstream: общественный, макс возраста = 60
  • Любой: public
  • ServerAndClient: частный, макс возраста = 60
  • Сервер: нет кэша
  • Нет директивы вывода: частный
+0

Пожалуйста, прочитайте [max-age] (https://tools.ietf.org/html/rfc7234#section-5.2.2.8). Я думаю, все упомянутые вами подходы говорят клиенту рассматривать данные как устаревшие после периода времени. Он не проверяет, действительно ли данные были изменены, отправив запрос на сервер, используя механизм типа «ETag». – Lijo

+0

Нет, это не делает проверку ETag из коробки. IIS делает это для статического контента, но веб-формы ASP.NET нет. Но, пожалуйста, переформулируйте свой вопрос, что вы на самом деле ищете. –

 Смежные вопросы

  • Нет связанных вопросов^_^