【发布时间】:2016-05-13 16:17:22
【问题描述】:
HttpWebRequest缓存的工作原理是什么?
我尝试在托管我的 Web 应用程序的 IIS 上回收应用程序池,但我仍然收到缓存响应。
所以缓存条目不存储在内存中?它究竟是如何工作的?
【问题讨论】:
标签: c# .net iis httpwebrequest system.net.httpwebrequest
HttpWebRequest缓存的工作原理是什么?
我尝试在托管我的 Web 应用程序的 IIS 上回收应用程序池,但我仍然收到缓存响应。
所以缓存条目不存储在内存中?它究竟是如何工作的?
【问题讨论】:
标签: c# .net iis httpwebrequest system.net.httpwebrequest
缓存存储在磁盘上。
HttpWebRequest 使用WinINet 缓存,这是 Internet Explorer 的底层缓存机制。文件存储在 Temporary Internet Files 文件夹中,该文件夹与 IE 存储临时内容的位置相同。 因此,如果您删除临时 Internet 文件,缓存将被清除。
来自another StackOverflow 的回答
HttpWebRequest 使用 System.Net.Cache.RequestCache 进行缓存。这是 一个抽象类; Microsoft CLR 中的实际实现是 Microsoft.Win32.WinInetCache,顾名思义,使用 用于缓存的 WinInet 函数。
又一篇好文章here
【讨论】: