Кэширование WCF REST выполняется модулем кэширования ASP.NET, который зарегистрирован для обработки событий HttpApplication.ResolveRequestCache
и HttpApplication.UpdateRequestCache
. Вам просто нужно обработать событие до ResolveRequestCache
(наиболее подходящим будет BeginRequest
) и запросить запрос непосредственно в HttpContext.Current.Request
(вы можете использовать свойство InputStream
для чтения чистого HTTP-запроса). Эти события обычно обрабатываются в файле Global.asax.
Имейте в виду, что кэширование может происходить на нескольких уровнях - клиент может иметь данные в своем собственном кэше, прокси-сервер может кэшировать данные и т. Д., Поэтому не обязательно все запросы, использующие кэшированный ответ, попадут на ваш сервер. Вы можете контролировать, где данные могут быть кэшированы, установив Location
в профиле кэша.