Domanda

Per il calcolo delle prestazioni, voglio avere alcune delle mie pagine Web utilizzano risorse che sono state memorizzate nella cache per l'utilizzo offline (immagini, CSS, ecc), ma di non avere la pagina stessa cache come il contenuto verrà generato in modo dinamico.

Un modo per farlo sarebbe quello di refactoring mie pagine in modo che caricano il contenuto dinamico tramite la tecnologia AJAX o cercando le cose in LocalStorage. I dettagli possono variare, ma in linea di massima, una cosa del genere.

Se è possibile, preferisco trovare un modo per istruire semplicemente al browser di utilizzare risorse memorizzate nella cache (ancora una volta, le immagini, CSS, etc.) per la pagina, ma per in realtà non memorizzare nella cache il (generati dinamicamente) HTML contenuto stesso .

C'è un modo per farlo con HTML5 offline AppCache? Sono sotto l'impressione che la risposta è "no", perché:

  • Ogni pagina che include il manifesto verranno memorizzate nella cache in modo da non posso specificare le risorse memorizzate nella cache nella pagina stessa.
  • Non c'è modo di raccontare una pagina precedente "utilizzare i beni non in linea per questa altra pagina, ma in realtà non memorizzare nella cache il codice HTML in quella pagina". È necessario specificare la pagina stessa, il che significa che il codice HTML verrà memorizzata nella cache.

Mi sbaglio a tale proposito? Sembra che non v'è probabilmente un modo ingannevole (o non-così-difficile) intorno a quello. Ora che ho digitato fuori, mi chiedo se compresa nella pagina in modo esplicito nella sezione NETWORK del AppCache manifesta farà il trucco.

È stato utile?

Soluzione

La mia risposta è "sì".

Ho lavorato su un web-app in cui ho elencato tutte le risorse necessarie nel manifesto, e impostare la sezione NETWORK a *.

Il manifesto viene poi incluso solo nella pagina di destinazione principale. Quindi, tutte le risorse vengono memorizzati nella cache la prima volta che si visita il sito e e funziona a meraviglia.

In breve,

  • una delle tue pagine deve includere il manifesto e sarà quindi cache.

    forse si può avere il manifesto caricata in un iframe e non hanno l'intera pagina in cache, solo un pensiero.

  • lista tutte le risorse per essere memorizzati nella cache nella sezione CACHE

  • impostare sezione NETWORK a *

Altri suggerimenti

Sono abbastanza certo che la risposta a questa non è. Se si utilizza la sezione Network in Chrome, allora mostra quali risorse vengono caricate dalla cache e che vengono caricati dal server. Ho cercato di impostare l'AppCache come descritto sopra e le risorse vengono sempre caricati dal server. Sarei corretto nel ritenere che se la pagina corrente non è nel AppCache allora non ci vorrà la briga di controllare in AppCache per una delle risorse?

Quello che ho trovato che sta lavorando è quello di elencare i file che non si desidera nella cache in AppCache nella rete: sezione del manifesto. Per me, questo significava l'aggiunta * .asp * alla sezione di rete. Ora, nessuno dei file ASP classico, o file aspx vengono memorizzati nella cache.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top