Cache-Control: privato e pubblico
-
27-09-2019 - |
Domanda
Cosa dovrebbe fare un client HTTP se il server ha restituito Cache-Control: private, public
?
Ho una sensazione private
dovrebbe sovrascrivere public
, ma non riesco a trovare una conferma nell'RFC (oltre a MUST
in private
e MAY
in public
).
Soluzione
Da un punto di vista pragmatico, erroi sul lato della cautela e trattalo "privato".
In questo modo si causa un po 'di traffico di rete in più per il server pessimo, ma mantieni i dati (potenzialmente privati) dell'utente.
Altri suggerimenti
Credo http://greenbytes.de/tech/webdav/draft-ietf-httpbis-p6-cache-20.html#rfc.section.3 è abbastanza chiaro: se è etichettato "privato", deve essere considerato privato, non importa se appare anche "pubblico"
Il controllo della cache privato viene utilizzato in questo contesto per memorizzare nella cache e archiviare i dati per un singolo macchina da utente e non essere servito con l'intera rete.
Mentre il controllo della cache pubblica viene utilizzato per archiviare i dati nella macchina client dal server e condividerli attraverso la rete su cui è connessa la macchina client.
Il controllo della cache privato viene utilizzato in questo contesto per memorizzare nella cache e archiviare i dati per un singolo macchina da utente e non essere servito con l'intera rete.
Mentre il controllo della cache pubblica viene utilizzato per archiviare i dati nella macchina client dal server e condividerli attraverso la rete su cui è connessa la macchina client.
Si prega di fare riferimento all'esempio seguente contiene i dettagli di http://www.totalworkflow.co.uk/ Risposta del server
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