2011-05-26 17 views
5

Una cosa que no entiendo completamente es si el manifiesto de caché también actúa como una búsqueda previa cuando está en línea para todos los archivos enumerados.manifiesto de caché HTML5 y recuperación previa

Por ejemplo, digamos que estoy de visita:

/page1.html 

Cada una de las páginas de mi sitio tendrá la misma declaración:

<html manifest="/cache.manifest"> 

En el archivo de manifiesto de caché, que tengo:

CACHE MANIFEST 
/page2.html 
/page3.html 
/page4.html 

Entonces, ¿qué va a pasar es que visito /pagina1.html primero, y cuando estoy en línea mi navegador a saber para almacenar en caché p edades 2-4 también. Y cuando estoy desconectado y visito las páginas 2-4 todo se cargará bien porque ya estaba en la memoria caché.

PREGUNTA: Si vuelvo a visitar /pagina1.html, y todavía estoy conectado en línea, y visitar /pagina2.html, será mi navegador todavía solicitar /pagina2.html, o va a no hacer otra petición al servidor y usar lo almacenado en caché del archivo /cache.manifest? ¿Esencialmente actúa como el enlace de captación previa que usa Firefox?

Respuesta

1

Bueno, el spec dice "todos los archivos", sin excepciones para los archivos html, por lo que creo que funciona para archivos html como cualquier otro, se toma de la caché, no del servidor. Sin embargo, no he hecho ninguna prueba para confirmar esto. Me gustaría hacer lo siguiente:

Cree el siguiente archivo de manifiesto de caché:

CACHE MANIFEST 
/page1.html 
/page2.html 
/page3.html 
/page4.html 

incluirlo en cada uno de los cuatro archivos de manifiesto de caché. Entonces:

  1. Visita page1.html
  2. Editar page2.html para que sea diferente a la anterior que ha visitado page1.html
  3. Visita page2.html
  4. Ver la versión que se obtiene.

Asegúrate de probarlo en todos los navegadores. Me interesaría ver tus resultados.

0

Creo que lo toma desde el archivo de manifiesto incluso si está en línea :). ¿No puedes probarlo cargando un archivo y luego navegando hacia la página?

1

Cuando usamos el manifiesto de caché toma los archivos del caché cada vez que carga la página. Hay una solución para esto.

Debe cambiar el número de versión en el archivo de manifiesto, si acaso ha realizado algún cambio en los archivos HTML. para que su manifiesto obtenga la última versión del HTML del servidor y lo almacene en caché.

CACHE MANIFEST 

#v01 
/page1.html 
/page2.html 
/page3.html 
/page4.html 

Puede sólo se incrementa el V01 a 02,03 ... Por lo tanto, esto asegurará que su caché tendrá versión más reciente de páginas html

Cuestiones relacionadas