resposta do servidor JSP
Response é principalmente o resultado de pós-tratamento de contentores de JSP para passar de volta para o cliente. Você pode definir a resposta HTTP por variáveis de estado e transmissão de dados, tais como cookies, informações de cabeçalho HTTP para o cliente.
Uma resposta típica se parece com isso:
HTTP/1.1 200 OK Content-Type: text/html Header2: ... ... HeaderN: ... (空行) <!doctype ...> <html> <head>...</head> <body> ... </body> </html>
A linha de status contém a informação da versão de HTTP, como HTTP / 1.1, um código de estado, tais como 200, existe uma mensagem curta que corresponde ao código de estado, tal como OK.
A tabela a seguir resume um cabeçalho de resposta HTTP1.1 a parte mais útil da Rede Programação Muitas vezes você vai vê-los:
cabeçalho de resposta | descrição |
---|---|
permitir | Especifica que o servidor suporta métodos de solicitação (GET, POST, etc.) |
Cache-Control | Especifica o documento de resposta pode ser armazenada em cache situação de segurança. O valor é normalmente pública, privada ou no-cache, e assim por diante. Público significa que os documentos podem ser armazenados em cache, Private significa que o documento é apenas um único serviço ao usuário e só usar um cache privado. Sem-cache significa que o documento não serão armazenados em cache. |
conexão | navegador de comando se usar conexões HTTP persistentes. perto navegadores comando valor não usam conexões HTTP persistentes, e os meios keep-alive usando conexões persistentes. |
Content-Disposition | Deixe o navegador requer que o usuário responder a um determinado nome armazenado em disco |
Content-Encoding | A página regras de codificação de transmissão especificada |
Content-Language | Idioma documento de descrição a ser utilizado, como en, en-us ,, ru etc. |
Content-Length | Ele indica o número de bytes da resposta. Apenas em seu navegador para utilizar persistente útil de if (keep-alive) conexões HTTP |
Content-Type | tipo MIME do documento mostra que a utilização de |
expira | Quando são especificados expirado e removido do cache |
Last-Modified | Especificado no documento foi modificada pela última vez. Os clientes podem armazenar em cache documentos e fornecer um cabeçalho de solicitação If-Modified-Since em pedidos subsequentes |
localização | Em 300 segundos, incluindo todos têm um código de status em resposta ao endereço, o navegador irá reconectar automaticamente e, em seguida, recupera o novo documento |
refrescar | Indicam quantas vezes o navegador solicita uma atualização de página. |
Repetir-Depois | E 503 (Serviço indisponível) usados em conjunto para informar ao usuário quanto tempo o pedido receberá uma resposta |
Set-Cookie | biscoito correspondente indica a página atual |
HttpServletResponse classe
javax.servlet.http.HttpServletResponse objeto de resposta é uma instância da classe. Como servidor cria objetos request, ele irá criar uma resposta do cliente.
objeto de resposta define o processo para criar as informações da interface do cabeçalho HTTP. Ao utilizar este objeto, os desenvolvedores podem adicionar novo cookie ou carimbo do tempo, bem como o código de status HTTP, e assim por diante.
A tabela seguinte lista usado para definir os métodos de cabeçalhos de resposta HTTP que fornecidos pela classe HttpServletResponse:
SN | Method & descrição |
---|---|
1 | Cadeia encodeRedirectURL (String url) Em sendRedirect () método de URL usado para codificar |
2 | Cadeia encodeURL (String url) A codificação de URL, URL de retorno que contém o ID da sessão |
3 | boolean containsHeader (String name) Retorna o cabeçalho de resposta especificado se houver |
4 | boolean isCommitted () Retorna se a resposta foi enviada para o cliente |
5 | vazio addCookie (bolinho Cookie) Adiciona o cookie especificado para a resposta |
6 | vazio addDateHeader (String nome, data longa ) Adicionar cabeçalhos de resposta e data especificada nome |
7 | vazio addHeader (String nome, String value ) Adicionar cabeçalhos de resposta e valores de nome especificado |
8 | vazio addIntHeader (String nome, valor int ) Adicionar cabeçalhos de resposta e valor int com o nome especificado |
9 | anular flushBuffer () Qualquer conteúdo do cache de escrita para o cliente |
10 | void reset () Limpar qualquer cache de quaisquer dados, incluindo códigos de status e cabeçalhos de resposta diferentes |
11 | anular resetBuffer () cache de dados de base clara, não incluindo os cabeçalhos de resposta e códigos de status |
12 | anular sendError (int sc) Usando o código de status especificado enviado para o cliente uma resposta de erro, em seguida, limpar o cache |
13 | vazio sendError (int sc, String msg ) Usando o código de estado especificado e uma mensagem de erro é enviado em resposta ao cliente |
14 | anular sendRedirect (String localização) Usando o URL especificado enviado ao cliente uma resposta indirecta temporária |
15 | vazio setBufferSize (int size) Defina o tamanho do buffer do corpo da resposta |
16 | vazio setCharacterEncoding (charset String) Especifica um conjunto de códigos de resposta (MIME conjunto de caracteres), como UTF-8 |
17 | vazio setContentLength (len int) Especifica servlets HTTP em resposta ao comprimento do conteúdo, o método utilizado para definir o cabeçalho HTTP de conteúdos de comprimento |
18 | vazio setContentType (tipo String) Defina o tipo de conteúdo da resposta, se a resposta ainda não foi apresentado, em seguida, |
19 | vazio setDateHeader (String nome, data longa ) Com o nome especificado e defina o valor do nome do cabeçalho de resposta e conteúdo |
20 | vazio setHeader (String nome, String value ) Com o nome especificado e defina o valor do nome do cabeçalho de resposta e conteúdo |
21 | vazio setIntHeader (String nome, valor int ) Com o nome especificado e defina o valor do nome do cabeçalho de resposta e conteúdo |
22 | vazio setLocale (loc Locale) resposta definição de região, se a resposta ainda não foi apresentado, em seguida, |
23 | vazio setStatus (sc int) Defina o código de status de resposta |
HTTP cabeçalho de resposta Exemplo Programa
O exemplo a seguir usa setIntHeader () método e método setRefreshHeader () para simular um relógio digital:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.io.*,java.util.*" %> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>本教程(w3big.com)</title> </head> <body> <h2>自动刷新实例</h2> <% // 设置每隔5秒自动刷新 response.setIntHeader("Refresh", 5); // 获取当前时间 Calendar calendar = new GregorianCalendar(); String am_pm; int hour = calendar.get(Calendar.HOUR); int minute = calendar.get(Calendar.MINUTE); int second = calendar.get(Calendar.SECOND); if(calendar.get(Calendar.AM_PM) == 0) am_pm = "AM"; else am_pm = "PM"; String CT = hour+":"+ minute +":"+ second +" "+ am_pm; out.println("当前时间: " + CT + "\n"); %> </body> </html>
Salve o main.jsp código acima, então acessá-lo através de um browser. Ele irá exibir a cada cinco segundos no momento atual.
Podemos olhar para os seguintes gráficos de apresentação Gif:
Você também pode modificar o código acima dele mesmo, tentar usar outros métodos, que será capaz de obter uma compreensão mais profunda.