O chamado cache do navegador significa que, quando você acessa uma página da web pela primeira vez, o navegador cache essas páginas da web localmente. Quando você acessa essas páginas da Web em cache na próxima vez, o navegador lerá diretamente o conteúdo dessas páginas da Web da área local sem precisar obtê -las na rede.
Embora a função de armazenamento em cache fornecida pelo navegador possa melhorar efetivamente a velocidade de carregamento das páginas da web, para algumas páginas da Web que requerem atualizações em tempo real, esse mecanismo de cache afetará a exibição normal das páginas da Web. Felizmente, existem três campos no cabeçalho da mensagem de resposta HTTP para desativar a função de cache do navegador do cliente. As três declarações a seguir usam esses três campos para fechar o cache do navegador:
Response.SetDateHeader ("Expira", 0); Response.Setheader ("Controle de cache", "sem cache"); Response.setheader ("Pragma", "No-Cache");Embora os três campos de cabeçalho da mensagem de resposta HTTP acima possam fechar o cache do navegador. No entanto, nem todos os navegadores suportam esses três campos de cabeçalho da mensagem de resposta, por isso é melhor usar os campos de cabeçalho de três mensagens de resposta acima para fechar o cache do navegador.
Exemplo: Desative os navegadores das páginas da web atuais do cache
1. Exemplo de descrição
Este programa demonstra o desempenho ao enviar mensagens de solicitação através do formulário quando o cache do navegador não estiver fechado e o cache do navegador é fechado.
2. Escreva uma aula de cache
O cache do navegador é fechado usando os campos de cabeçalho da mensagem de três resposta acima na classe de cache e produz um pedaço de código HTML para o cliente para testar o efeito de fechar o cache e não fechar o cache. O código de implementação da classe de cache é o seguinte:
classe pública Cache estende httpServlet {public void Service (solicitação httpServletRequest, resposta httpServletResponse) lança servletexception, ioexception {Response.setContentType ("text/html; charset = utf-8"); String cache = request.getParameter ("cache"); if (cache! = null) {if (cache.equals ("false")) {// feche o navegador Cache Response.SetDateHeader ("Expira", 0); Response.setheader ("Cache-Control", "No-Cache"); Response.setheader ("Pragma", "sem cache"); }} // Defina o código html string html = "<formul ida = 'formulário', action = 'test' method = 'post'>" + "nome: <input type = 'text' name = 'name'/>" + "<input type = 'submit' value = 'submit'/>" "</forma>"; PrintWriter out = Response.getWriter (); out.println (html); // saída de código html para o cliente}}Como pode ser visto no código acima, o cache do navegador é fechado quando o valor do parâmetro de solicitação de cache é falso.
3. Configure a classe de cache
O código de configuração da classe de cache é o seguinte:
<Verlet> <Servlet-name> cache </irvlet-name> <Servlet-Class> Capítulo5.cache </Servlet-Class> </Servlet> <Vertlet-Mapping> <Servlet-Name> cache </servlet-name> <url-Pattern>/cache </url-tattern> </ervlet-Mapping>
4. Teste a situação em que o cache do navegador não está fechado
Digite o seguinte URL na barra de endereço do navegador:
http: // localhost: 8080/demonstração/cache? cache = true
Digite qualquer string na caixa de texto [Nome] e clique no botão [Enviar]. No momento, o navegador exibirá uma exceção (essa exceção é causada pelo teste enviado que não existe; portanto, não precisamos nos preocupar com isso) e, em seguida, clique no botão Retorno do navegador para retornar à página em que os dados foram inseridos agora. Podemos ver que a sequência inserida agora ainda existe. Isso significa que, ao retornar, o navegador não recupera a página do servidor, mas recarregue a página atual do cache local.
5. Teste a situação de fechar o cache do navegador
Digite o seguinte URL na barra de endereço do navegador para fechar o cache do navegador:
http: // localhost: 8080/demonstração/cache? cache = false
Envie e retorne na etapa anterior e descobriu que os dados inseridos agora se foram. Isso significa que, depois de fechar o cache do navegador, o navegador sempre recuperará a página atual do servidor sempre que retornar. Portanto, a página atual sempre mantém o valor inicial.
6. Resumo do procedimento
Ao fechar o cache do navegador, para garantir que seja eficaz na maioria dos navegadores o máximo possível, recomendo o uso dos três campos de cabeçalho da mensagem de resposta HTTP acima para fechar o cache do navegador ao mesmo tempo.
Resumir
O exposto acima é o método de Javaweb que proíbe os navegadores de cachear as páginas da web atuais. Espero que seja útil para todos. Se você tiver alguma dúvida, deixe -me uma mensagem e o editor responderá a todos a tempo. Muito obrigado pelo seu apoio ao site wulin.com!