26

Ho un documento HTML con un manifest dell'appcache associato. Ma ora voglio liberarmi del caching dell'applicazione offline per un po '.Rimozione di Applache offline HTML5

Se rimuovo la menzione del manifest dal tag <html>, i browser che hanno già una versione cache continueranno a utilizzare quella versione memorizzata nella cache.

Se aggiorno il manifest dell'appcache, beh, qualsiasi cosa, c'è ancora un appcache.

Qual è il modo più ragionevole per rimuovere la cache delle applicazioni offline? Suppongo che ho potuto solo cambiare il manifesto di non avere voci diverse:

NETWORK: 
* 

Allora non sarà effettivamente in cache nulla.

Ma sicuramente ci deve essere un modo per eliminare del tutto l'appcache e il file manifest, no?

+0

possibile duplicato del [Rimozione HTML5 AppCache manifesto, in modo permanente] (http://stackoverflow.com/questions/8815280/removing-html5-appcache-manifest-permanently) –

+4

@KyleTrauberman Questa domanda è stato chiesto su 29 ottobre 2011. Il duplicato suggerito è stato chiesto quest'anno (2012), dopo che è stata posta questa domanda. – Trott

+2

interessante. Non l'ho selezionato, è stato suggerito automaticamente dal nuovo sistema di revisione beta. Sembrava una buona partita, quindi ho votato. –

risposta

28

È sufficiente rimuovere il manifest appcache dal server. Se il browser non può accedere al file manifest, interromperà il caching dell'app e rimuoverà tutti i dati memorizzati nella cache.

Alcune informazioni utili da due siti:

Se il file manifesto in sé non può essere recuperato, la cache sarà ignorato e tutti i dati memorizzati nella cache ad esso associati saranno disattese.

http://appcache.offline.technology/

cache applicazione può anche diventare obsoleti. Se il manifest è stato rimosso dal server , il browser rimuove tutte le cache delle applicazioni che utilizzano quel manifest, quindi invia un evento "obsoleto" all'oggetto di cache dell'applicazione . Quindi lo stato della cache dell'applicazione è impostato su su OBSOLETE.

https://developer.mozilla.org/en/Offline_resources_in_Firefox

+1

dopo averlo cancellato, puoi testarlo con questa linea di js; quando viene restituito il 404 dal manifest cancellato, questo viene attivato: appCache.addEventListener ('obsoleto', handleCacheEvent, false); – albert

+0

forse potresti aiutarmi? http://stackoverflow.com/questions/9287044/my-html5-application-cache-manifest-is-caching-everything – Neo

+1

Questo non ha funzionato in Firefox per me. Firefox ha continuato a utilizzare l'appcache memorizzato nella cache quando ha ricevuto un 404. Soluzione: http://stackoverflow.com/a/31083156/119975 –

21

per chiunque imbattersi in questa domanda e che hanno eliminato il AppCache manifesta, cancellate la cache del browser e rimosso il manifesto dal server e il riferimento ad esso nel codice HTML: Se questo ancora fatto non consentire al documento HTML di caricare la versione di aggiornamento in Google Chrome, è possibile passare a chrome: // appcache-internals/ nel browser e fare clic su RIMUOVI accanto al manifest che si desidera eliminare.

+1

L'unica situazione in cui posso immaginare che ciò accada è se non si imposta la scadenza della cache HTTP convenzionale per il tuo manifest alla scadenza immediata. Inoltre, e forse un punto minore, ma questa risposta non è in realtà una risposta alla domanda posta. È una risposta a "come rimuoverlo dal mio browser", non come rimuoverlo per tutti coloro che visitano il mio sito. Ancora, informazioni molto utili per gli utenti di Chrome! – Trott

2

In Firefox moderna si può manipolare la cache non in linea con ModificaPreferenzeavanzatarete.

In Windows è ora (v27.01) StrumentiOpzioniavanzatarete

6

Eliminare manualmente cache di app: solo per Chrome

Inserire l'URL seguito nel browser Chrome: chrome://appcache-internals/

ci si vedrà una lista di tutte le cache delle applicazioni che hai in memoria con la possibilità di rimuoverle.

Reference