Ответ 1
Оказывается, это была вещь веб-API. Я бы упустил тот факт, что заголовок ответа четко заявил, что кеширование отключено.
Ответ, как показано на вкладке "Сеть" Google Chrome:
После дальнейшего расследования (и, как видно на изображении выше), кеширование отключено в контроллерах Web API. Даже атрибут [OutputCache]
, который используется в обычных контроллерах MVC, не поддерживается.
К счастью, я нашел этот блог: http://www.strathweb.com/2012/05/output-caching-in-asp-net-web-api/
которые приводят меня к этим двум решениям:
Я решил пойти с CacheOutput, поскольку он позволяет мне использовать такие атрибуты, как:
[CacheOutputUntilToday]
, который поддерживает кеширование на стороне сервера и клиента.
Или, если бы я хотел просто использовать кеширование на стороне клиента Я могу использовать что-то вроде:
[CacheOutput(ClientTimeSpan = 100, ServerTimeSpan = 0)]
Казалось, что на первый взгляд кажется, что CacheCow подходит. И проще реорганизовать позже, если потребуется.
Теперь дополнительные запросы дают мне 200 (from cache)
:
С обновлением, дающим мне 304 Not Modified
:
Проблема решена! Надеюсь, это поможет кому-то еще.