Sto giocando con una cache dell'applicazione e si verificano problemi con la funzione swapCache.Errore eccezione DOM 11 su swapCache()
ho creato più semplice la cache file manifesto del mondo:
CACHE MANIFEST
# Timestamp: 2013-03-01 11:28:49
CACHE:
media/myImage.png
NETWORK:
*
esecuzione l'applicazione per la prima volta che mi dà questo nella console:
Creating Application Cache with manifest http://blah_blah/offline.appcache
Application Cache Checking event
Application Cache Downloading event
Application Cache Progress event (0 of 1) http://blah_blah/media/myImage.png
Application Cache Progress event (1 of 1)
Application Cache Cached event
Tutto bene finora. Poi ho scambiare l'immagine e cambiare il timestamp nel file manifesto e ottengo il seguente:
Adding master entry to Application Cache with manifest http://blah_blah/offline.appcache
Application Cache Downloading event
Application Cache Progress event (0 of 2) http://blah_blah/media/myImage.png
Application Cache Progress event (1 of 2) http://blah_blah/Widget/?invoke=myWidgetFunctionName
Application Cache Progress event (2 of 2)
Application Cache UpdateReady event
A tal punto la funzione applicationCache.swapCache() viene chiamato dandomi un'eccezione DOM 11 errori.
I tipi MIME sono tutti correttamente configurati sul server web.
Qualcuno ha qualche idea/può indicarmi la giusta direzione? (Ho letto tutta la roba dell'appcache comunemente collegata online e non vedo cosa sto sbagliando)
Grazie!
EDIT:
Come ho già detto nei commenti qui sotto, l'impostazione della scadenza intestazioni sul mio web server per i file * .appcache a scadono sembra immediatamente per farlo lavorare anche se sto ancora ricevendo l'errore di eccezione DOM (! ?). Ho trovato il seguente post di blog che può essere d'aiuto: Possible Fix for Offline App Cache INVALIDSTATEERR
... ma non ho idea di come impostare i tipi MIME lato client. Le mie abilità google-Fu mi hanno abbandonato. Chiunque?
Anche questo errore viene visualizzato occasionalmente/in modo incoerente e non riesco a trovare la soluzione. Mi piacerebbe sapere se lo capisci. – captainclam
Ora ho impostato le intestazioni di scadenza sul mio server web per i file * .appcache per scadere immediatamente e ora l'appcache sembra funzionare come previsto. Tuttavia, sto ancora ricevendo l'errore di eccezione DOM 11 sulla chiamata swapCache quindi non sono sicuro del motivo per cui funziona! –
Il link che hai postato suggerisce semplicemente di aggiungere i tipi MIME nella configurazione di apache (per me in '/ etc/mime.types' aggiungendo' text/cache-manifest appcache'). L'ho fatto e ho controllato il tipo di mime consegnato usando curl: 'Content-Type: text/cache-manifest'. Ma continuo a ricevere lo stesso errore ogni volta che chiamo 'appcache.update()' o 'appcache.swapCache()'. Mi piacerebbe anche sentire qualcuno capirlo ... – koko