El llamado almacenamiento en caché del navegador significa que cuando accede a una página web por primera vez, el navegador almacenará en caché estas páginas web localmente. Cuando accede a estas páginas web en caché la próxima vez, el navegador leerá directamente el contenido de estas páginas web del área local sin tener que obtenerlas de la red.
Aunque la función de almacenamiento en caché proporcionada por el navegador puede mejorar efectivamente la velocidad de carga de las páginas web, para algunas páginas web que requieren actualizaciones en tiempo real, este mecanismo de almacenamiento en caché afectará la visualización normal de páginas web. Afortunadamente, hay tres campos en el encabezado del mensaje de respuesta HTTP para apagar la función de caché del navegador del cliente. Las siguientes tres declaraciones usan estos tres campos para cerrar el caché del navegador:
Respuesta.SetDateHeader ("Expires", 0); Response.Setheader ("Cache-Control", "No-Cache"); Response.Setheader ("Pragma", "No-Cache");Aunque los tres campos de encabezado de mensaje de respuesta HTTP anteriores pueden cerrar el caché del navegador. Sin embargo, no todos los navegadores admiten estos tres campos de encabezado de mensajes de respuesta, por lo que es mejor usar los tres campos de encabezado de mensajes de respuesta anteriores para cerrar el caché del navegador.
Ejemplo: Desactivar los navegadores de las páginas web actuales de caché
1. Descripción del ejemplo
Este programa demuestra el rendimiento al enviar mensajes de solicitud a través del formulario cuando el caché del navegador no está cerrado y el caché del navegador está cerrado.
2. Escribe una clase de caché
El caché del navegador se cierra utilizando los campos de encabezado de mensajes de respuesta de respuesta anteriores en la clase de caché y genera una pieza de código HTML al cliente para probar el efecto de cerrar el caché y no cerrar el caché. El código de implementación de la clase de caché es el siguiente:
El caché de clase pública extiende httpservlet {Servicio público void (solicitud httpservletRequest, httpServletResponse) lanza ServletException, IOException {Response.SetContentType ("Text/Html; Charset = UTF-8"); String caché = request.getParameter ("caché"); if (cache! = null) {if (cache.equals ("false")) {// cerrar la respuesta de caché del navegador.setDateHeader ("expiras", 0); Respuesta.setheader ("Cache-Control", "No-Cache"); respuesta.setheader ("Pragma", "No-Cache"); }} // Define el código HTML String html = "<form de formato = 'form', action = 'test' método = 'post'>" + "nombre: <input type = 'text' name = 'name'/>" + "<input type = 'shit' value = 'sipt'/>" + "</form>"; PrintWriter out = Response.getWriter (); out.println (html); // El código HTML de salida al cliente}}Como se puede ver en el código anterior, el caché del navegador está cerrado cuando el valor del parámetro de solicitud de caché es falso.
3. Configure la clase de caché
El código de configuración de la clase de caché es el siguiente:
<Servlet> <Servlet-name> Cache </servlet-name> <ervlet-class> capítulo 5.cache </servlet-class> </servlet> <ervlet-mapping> <ervlet-name> cache </servlet-name> <url-pattern>/cache </url-pattern> </servlet-mapping>
4. Pruebe la situación en la que el caché del navegador no está cerrado
Ingrese la siguiente URL en la barra de direcciones del navegador:
http: // localhost: 8080/demo/cache? caché = true
Ingrese cualquier cadena en el cuadro de texto [Nombre] y haga clic en el botón [Enviar]. En este momento, el navegador mostrará una excepción (esta excepción es causada por la prueba enviada que no existe, por lo que no tenemos que preocuparnos por eso), y luego hacer clic en el botón de retorno del navegador para volver a la página donde se ingresaron los datos en este momento. Podemos ver que la cadena ingresada todavía todavía existe. Esto significa que al regresar, el navegador no recupera la página del servidor, sino que vuelve a cargar la página actual de la memoria caché local.
5. Pruebe la situación de cierre del caché del navegador
Ingrese la siguiente URL en la barra de direcciones del navegador para cerrar el caché del navegador:
http: // localhost: 8080/demo/caché? caché = falso
Envíe y regrese en el paso anterior, y descubrió que los datos ingresados se habían ido. Esto significa que después de cerrar el caché del navegador, el navegador siempre recuperará la página actual del servidor cada vez que regrese. Por lo tanto, la página actual siempre mantiene el valor inicial.
6. Resumen del procedimiento
Al cerrar la memoria caché del navegador, para asegurarse de que sea efectivo en la mayoría de los navegadores tanto como sea posible, recomiendo usar los tres campos de encabezado de mensajes de respuesta HTTP anteriores para cerrar el caché del navegador al mismo tiempo.
Resumir
Lo anterior es el método de Javaweb que prohíbe los navegadores de caché de las páginas web actuales. Espero que sea útil para todos. Si tiene alguna pregunta, déjame un mensaje y el editor responderá a todos a tiempo. ¡Muchas gracias por su apoyo al sitio web de Wulin.com!