2014-04-24 13 views
8

In Effective Android HTTP Jesse Wilson segnala che:HTTP risorse statiche caching per sempre stategy

Serve risorse statiche come immagini? utilizzare un URL permanente e lasciarlo nella cache per sempre

Sto usando Picasso con uno specifico OkHttp istanza per il recupero e le immagini di caching. Mi chiedo come impostare la strategia let it cache forever?

Posso solo pensare di sovrascrivere l'intestazione di controllo della cache HTTP max-stale (Cache-Control: max-stale=) con il valore più alto possibile, c'è un altro (migliore) modo?

risposta

11

Il modo migliore è configurare il server in modo da includere un limite massimo di età. Ad esempio, specificare 365 giorni con questa intestazione:

Cache-Control: max-age=31536000 

Se si desidera attivare la memorizzazione nella cache illimitata sul client, è possibile utilizzare una lunga max-stale:

Cache-Control: max-stale=31536000 
+0

C'è una ragione questo è considerato meglio di un lungo "Scade"? – Umopepisdn

+1

È preferibile da RFC 7234, la specifica della cache HTTP. "Se una risposta include un campo Cache-Control con la direttiva max-age (Sezione 5.2.2.8), un destinatario DEVE ignorare il campo Expires." –

Problemi correlati