我最近在我的一些 Web 服务响应中添加了一些 HTTP 缓存标头,但到目前为止,它们在客户端还没有为我做任何事情。以下是这些回复之一:
HTTP/1.1 200 OK
Cache-Control: public, max-age=60
Transfer-Encoding: chunked
Content-Type: application/vnd.com...
Expires: Thu, 27 Sep 2012 03:40:27 GMT
Server: Microsoft-IIS/7.5
Set-Cookie: DDRSSID=...
X-DDVS-Version: 1.0.0.0
X-Powered-By: ASP.NET
Date: Thu, 27 Sep 2012 03:40:22 GMT
根据 Fiddler 和 REDbot 的说法,这个响应应该是完全可缓存的。这是提琴手所说的:
public:这个响应可以被任何缓存缓存。
max-age:此资源将在 1 分钟后过期。[60 秒]
即便如此,响应也不是来自缓存:我在 Fiddler 中看到它们并且IsFromCache
我的属性HttpWebResponse
是false。这是我请求的内容,fwiw:
GET http://floater/rest/folders/folder.20 HTTP/1.1
Accept: application/vnd.com....
Authorization: Basic blahblah
Host: floater
我错过了什么?