4

如果服务器返回,http 客户端应该怎么做Cache-Control: private, public

我有一种感觉private应该覆盖public,但我在 RFC 中找不到确认(除了MUSTinprivateMAYin public)。

4

4 回答 4

5

我相信http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p6-cache-20.html#rfc.section.3很清楚——如果它被标记为“私有”,它需要被视为私有, 无论是否出现“public”

于 2012-09-19T16:45:22.233 回答
2

从务实的角度来看,宁可谨慎行事,也要将其视为“私人”。

这样一来,您会为糟糕的服务器带来一点额外的网络流量,但要保证用户(可能是私有的)数据的安全。

于 2011-08-23T10:58:24.413 回答
1

在这种情况下,私有缓存控制用于缓存和存储单个用户机器的数据,而不是为整个网络提供服务。

而公共缓存控件用于将来自服务器的数据存储在客户端计算机中,并在客户端计算机连接到的网络上共享它。

于 2012-09-19T15:41:51.337 回答
0

在这种情况下,私有缓存控制用于缓存和存储单个用户机器的数据,而不是为整个网络提供服务。

而公共缓存控件用于将来自服务器的数据存储在客户端计算机中,并在客户端计算机连接到的网络上共享它。

请参考以下示例包含http://www.totalworkflow.co.uk/服务器响应的详细信息

HTTP/1.1 200 OK
Cache-Control: private
Content-Type: text/html; charset=utf-8
Server: Microsoft-IIS/7.5
Set-Cookie: .ASPXANONYMOUS=TV4owqs-zQEkAAAAZmFhNDI5NDQtZmFmMi00Y2Q3LWI4NDctYTE0NDg5MzAwNjg20; expires=Wed, 30-May-2012 21:32:48 GMT; path=/; HttpOnly
Set-Cookie: ASP.NET_SessionId=x12csr3ac4jp03jugqawke2d; path=/; HttpOnly
X-AspNet-Version: 2.0.5072
于 2012-03-22T12:00:27.843 回答