我有一个HttpWebRequest,我已将CachePolicy设置为CacheIfAvailable,并且我已将AllowAutoRedirect设置为false。 现在当有缓存命中时,HttpWebResponse.Status == NotModified,并且没有响应流。我需要知道缓存的响应是什么!
如果我将CachePolicy设置为BypassCache,它可以正常工作。但我需要缓存这些结果。
有人可以告诉我如何在缓存命中的情况下检索缓存的响应吗?
答案 0 :(得分:0)
事实证明,问题在于我正在设置HttpWebRequest.IfModifiedSince(自身)。是的,该属性的getter设置为始终返回DateTime.Now,直到它被显式设置。所以: request.IfModifiedSince = request.IfModifiedSince; 不是一个安全的无操作。它实际上设置了一个标志,表示实际发送If-Modified-Since HTTP标头,这引起了我的悲痛。