Cache-Kontroll: privat und öffentlich
-
27-09-2019 - |
Frage
Was soll ein HTTP -Client tun, wenn der Server zurückgegeben wird? Cache-Control: private, public
?
ich habe ein Gefühl private
sollte überschreiben public
, aber ich kann keine Bestätigung im RFC finden (anders als MUST
in private
und MAY
in public
).
Lösung
Aus pragmatischer Sicht ierst du auf die Seite der Vorsicht und behandeln Sie es "privat".
Auf diese Weise verursachen Sie einen kleinen zusätzlichen Netzwerkverkehr für den miese Server, halten Sie jedoch die Daten Ihres Benutzers (potenziell private) Daten.
Andere Tipps
Ich glaube http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p6-cache-20.html#rfc.section.3 ist ziemlich klar - wenn es als "privat" bezeichnet wird, muss es als privat angesehen werden, egal ob auch "öffentlich" erscheint
In diesem Zusammenhang wird die private Cache -Steuerung verwendet, um die Daten für einen einzelnen Benutzergerät zu speichern und zu speichern und nicht mit dem gesamten Netzwerk bedient zu werden.
Während die öffentliche Cache -Steuerung verwendet wird, um die Daten im Client -Computer vom Server aus zu speichern und über das Netzwerk zu teilen, mit dem der Client -Computer verbunden ist.
In diesem Zusammenhang wird die private Cache -Steuerung verwendet, um die Daten für einen einzelnen Benutzergerät zu speichern und zu speichern und nicht mit dem gesamten Netzwerk bedient zu werden.
Während die öffentliche Cache -Steuerung verwendet wird, um die Daten im Client -Computer vom Server aus zu speichern und über das Netzwerk zu teilen, mit dem der Client -Computer verbunden ist.
Bitte beachten Sie das folgende Beispiel enthält die Details von http://www.totalworkflow.co.uk/ Serverantwort
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