headers expires control cache cabeceras age http-headers

http headers - expires - ¿Por qué cache-control: max-age no funciona?



no cache (1)

Me inclino por encabezados http, y quiero ejecutar una prueba en el campo "control de caché", así que construyo un sitio web asp.net que solo tiene una página predeterminada. En esta página estoy probando el "control de caché" "campo con códigos en la página_carga a continuación:

Response.AddHeader("Cache-Control","max-age=3600"); Response.Write(new Random().Next(0,9999).ToString());

Pensé que me daría el mismo número cada vez que actualice la página porque la página está almacenada en caché localmente por el navegador cuando recibió el encabezado "Cache-Control: max-age = 3600", pero para mi sorpresa, me da un nuevo número cada vez que presiono el botón de actualización (no ctrl + f5), al igual que el control de caché no funciona en absoluto.

Capturo la información de solicitud / respuesta utilizando el violín, y veo que hay un "Control de caché: max-age = 0" en el encabezado de solicitud mientras que un "Cache-Control: max-age = 3600" en el encabezado de respuesta. Parece el "Cache-Control: max-age = 0" previene el caché, pero ¿por qué? ¿Me estoy perdiendo de algo?


En los navegadores, F5 realiza una "Actualización condicional" que llega al servidor con una solicitud condicional (utilizando el archivo de caché solo si el servidor dice que lo haga a través de un HTTP / 304). Para ver el efecto de su encabezado de almacenamiento en caché, abra nuevas pestañas en la misma página. Verá el mismo valor si configuró todo bien.

Obtenga más información acerca de la actualización del navegador aquí: http://blogs.msdn.com/b/ieinternals/archive/2010/07/08/technical-information-about-conditional-http-requests-and-the-refresh-button.aspx