HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
Gerando a resposta do usuário: Encabeçamentos da resposta do HTTP |
Uma resposta do web server consiste normalmente em um um ou mais de status uma linha, encabeçamentos da resposta, uma linha em branco, e o original. Ajustar os encabeçamentos da resposta do HTTP vai frequentemente em conjunto com o ajuste os códigos de status na linha de status. Por exemplo, diversos dos códigos de status movidos “original” têm um encabeçamento acompanhando da posição, e os 401 o código (desautorizado) que deve incluir acompanhar WWW-Authenticate o encabeçamento.
|
Vista geral
|
A maneira a mais geral especificar encabeçamentos é pelo método do setHeader de HttpServletResponse, que faz exame de duas cordas: o nome do encabeçamento e o valor do encabeçamento. Como o ajuste dos códigos de status, isto deve ser feito antes que todo o índice do original esteja emitido.
Há também dois métodos especializados para ajustar os encabeçamentos que contêm datas (setDateHeader) e inteiros (setIntHeader). O primeiro conserva-o problema de traduzir uma data de Java nos milissegundos desde o epoch (como retornado por System.currentTimeMillis ou pelo método do getTime aplicado a um objeto da data) em uma corda de tempo do GMT. O segundo poupa-o a inconveniência menor de converter um interno a uma corda.
Melhor que ajustando o encabeçamento outright, você pode adicionar um encabeçamento novo, caso que um encabeçamento com esse nome existe já. Usar o addHeader, o addDateHeader, e o addIntHeader para este. Se lhe importar realmente se um encabeçamento específico tem sido ajustado já, usar o containsHeader verificar.
Finalmente, HttpServletResponse fornece também um número de métodos da conveniência para os encabeçamentos comuns especificando.
O método do setContentType ajusta o Índice-Tipo encabeçamento, e é usado pela maioria dos servlets.
O método do setContentLength ajusta o encabeçamento do Índice-Comprimento, útil se o browser suportar conexões (mant-vivas) persistentes do HTTP.
O método do addCookie ajusta o bolinho (não há nenhum setCookie correspondente, desde que é normal ter linhas múltiplas do Ajust-Bolinho).
E, como discutido na seção precedente, o método do sendRedirect ajusta o encabeçamento da posição as well as o ajuste do código de status a 302.
|
Encabeçamentos comuns da resposta e seu Meaning
|
Header
|
Interpretation/Purpose
|
Allow
|
Que métodos do pedido (COMEÇAR, AFIXAR, etc.) o usuário suporta?
|
Content-Encoding
|
Que método foi usado codificar o original? Você necessita descodificá-lo para começar o tipo especificado pelo Índice-Tipo encabeçamento. Usar o gzip comprimir o original pode dramàtica reduzir tempos do download para limas do HTML, mas é suportado somente por Netscape no Unix e por IE 4 e 5 em Windows. Na uma mão, as limas gzipping do HTML podem dramàtica reduzir tempos do download, e GZIPOutputStream de Java fá-la fácil. Assim você deve explicitamente verificar se o browser suportar este olhando o encabeçamento Aceit-Codificando (isto é através de request.getHeader (“Aceit-Codificando”)). Que a maneira, você pode retornar gzipped as páginas ao browser que sabem unzip as, mas retornam ainda páginas regulares a outros browsers.
|
Content-Length
|
Quantos bytes estão sendo emitidos? Esta informação é somente needed se o browser estiver usando uma conexão (mant-viva) persistente do HTTP. Se você quiser seu servlet fazer exame da vantagem deste quando o browser a suporta, seu servlet deve escrever o original em um ByteArrayOutputStream, olha acima seu tamanho quando feito, posto isso no campo do Índice-Comprimento, emite então o índice através de byteArrayStream.writeTo (response.getOutputStream ())..
|
Content-Type
|
Que é o tipo do MIME do seguinte original? O defeito para servlets é texto/liso, mas especificam geralmente explicitamente o texto/HTML. Ajustar este encabeçamento é assim comum que há um método especial em HttpServletResponse para ele: setContentType
|
Date
|
Que é tempo atual (no GMT)? Usar o método do setDateHeader especificar este encabeçamento. Isso conserva-o o problema de formatar a corda de data corretamente.
|
Expires
|
Em que hora deve o índice ser considerado para fora - de - data e assim já não cached?
|
Last-Modified
|
Quando o último do original foi mudado? O cliente pode fornecer uma data através do Se-Modific-Desde que encabeçamento do pedido. Isto está tratado como um condicional COMEÇA, com o original que está sendo retornado somente se a data do Last modified estiver mais atrasada do que a data especificada. Se não (não modificado) uma linha de status 304 é retornada. Outra vez, usar o método do setDateHeader especificar este encabeçamento.
|
Location
|
Onde deve o cliente ir começar o original? Isto é ajustado geralmente indiretamente, junto com um código de status 302, através do método do sendRedirect de HttpServletResponse.
|
Refresh
|
Como logo deve o browser pedir uma página updated (nos segundos)? Em vez apenas de recarregar a página atual, você pode especificar uma página específica para carregar através do setHeader (“refrescar”, “5; URL= http://host/path”). Anotar que isto está ajustado geralmente através do <META HTTP-EQUIV= " refresca” CONTENT= " 5; URL= http://host/path " > na seção PRINCIPAL do HTML page, melhor que como um encabeçamento explícito do usuário. Isto é porque o recarregamento ou o forwarding automático são algo desejado frequentemente pelos autores do HTML que não têm o acesso do cgi ou do servlet. Mas para servlets, ajustar o encabeçamento está diretamente mais fácil e mais desobstruído. Anotar que este encabeçamento significa o “reload esta página ou ir ao URL especificado em segundos de N.” Não significa o “reload esta página nem não vai ao URL especificado segundos de cada N.” Assim você tem que emitir um encabeçamento refrescar cada vez, e emitir (um código de status 204 de nenhum índice) para o browser do recarregamento mais mais, não obstante se você emite explicitamente o encabeçamento refrescar ou o <META HTTP-EQUIV= do uso " refresca "… >. Anotar que este encabeçamento não é oficialmente parte de HTTP 1.1, mas é uma extensão suportada por Netscape e por Internet Explorer.
|
Server
|
Que usuário é mim? Servlets não ajusta geralmente este; o web server próprio.
|
Set-Cookie
|
Especifica o bolinho associado com a página. Servlets não deve usar response.setHeader (o “Ajust-Bolinho”,…), mas usar preferivelmente o método special-purpose do addCookie de HttpServletResponse. Ver a seção separada em segurar bolinhos.
|
WWW-Authenticate
|
Que tipo e reino da autorização deve o cliente fornecer em seu encabeçamento da autorização? Este encabeçamento é requerido nas respostas que têm uma linha de status 401 (desautorizada). Por exemplo response.setHeader (“WWW-Authenticate”, do “realm= BASIC \ “executivos \ ""). Anotar que os servlets não seguram geralmente este eles mesmos, mas deixar preferivelmente Web pages senha-protegidos ser segurado pelos mecanismos especializados do web server (por exemplo .htaccess). |
|
|
|
Keywords:
Handling the Client Request:Form Data,asp net client,asp net data,vb net data,control data,data net,java client,data repeater
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|