CodeGym/Cursos Java/Módulo 3/Cabeçalhos HTTP Parte 2

Cabeçalhos HTTP Parte 2

Disponível

7.1 Cabeçalho Keep-Alive

E mais alguns títulos úteis. O cabeçalho Keep-Alive informa ao servidor para manter a conexão aberta: o servidor não fechará a conexão imediatamente após enviar a resposta. Isso fará com que a próxima solicitação do mesmo cliente para o servidor seja concluída mais rapidamente.

Um exemplo desse cabeçalho:

Connection: Keep-Alive

Mas se todos os clientes exigirem uma conexão permanente, os problemas começarão no servidor. O servidor ficará indisponível ou começará a fechar as conexões por conta própria.

7.2 Cabeçalho de controle de cache

O cabeçalho Cache-Control pode ser usado para controlar o cache de conteúdo. O cache configurado corretamente acelera o trabalho com o conteúdo, o cache configurado incorretamente cria problemas do nada.

Para desabilitar o cache, você precisa escrever o seguinte cabeçalho:

Cache-Control: no-cache, no-store, must-revalidate

Nada deve ser armazenado no cache - nem das solicitações do cliente nem das respostas do servidor. A solicitação é sempre enviada ao servidor, a resposta é sempre baixada completamente.

Você também pode ativar o tipo de cache mais primitivo e confiável :

Cache-Control: no-cache

Antes de distribuir uma cópia, o cache consulta o servidor de origem para verificar se o recurso está atualizado.

Você pode especificar o tempo de cache do recurso em segundos . O cabeçalho ficará assim:

Cache-Control: max-age=31536000

Este cabeçalho especifica o tempo máximo de cache para o conteúdo.

Você pode ler mais sobre cache aqui.

7.3 Cookies

O servidor pode armazenar dados no lado do cliente . Esses dados são chamados de cookie . No entanto, o cliente também pode armazenar o cookie. Eles são muito úteis para ambas as partes.

Por exemplo, você acessa o site e já está autorizado nele. Ou seja, quando você se conectou pela última vez, o servidor ordenou ao navegador que armazenasse informações sobre o login bem-sucedido de um determinado usuário.

Aqui está a aparência do Cookie em uma solicitação:

Cookie: name=value;name2=value2;nameN=valueN00

Os cookies geralmente são armazenados pelo navegador e estão vinculados a um domínio específico . Quando você visita o mesmo domínio novamente, os cookies são adicionados automaticamente à solicitação http e à resposta http. O servidor/domínio não pode receber cookies que são armazenados no navegador por outro servidor/domínio.

Cada cookie tem 4 parâmetros principais:

  • Nome;
  • significado;
  • período de validade (quanto tempo para armazená-los);
  • o domínio ao qual o cookie está vinculado.

Os cookies são armazenados e transmitidos em forma de texto, portanto, tanto o nome quanto o valor são strings. Se o tempo de expiração do cookie não for especificado, eles serão destruídos após o fechamento do navegador.

7.4 sessão

Depois que o usuário faz login no site, ele diz que uma sessão foi estabelecida entre o site e o servidor.

O servidor cria em si um objeto especial - HttpSession,onde armazena todas as informações necessárias para trabalhar com um cliente autorizado. E o número exclusivo desse objeto é armazenado no navegador na forma de um Cookie.

Os servidores da Web Java geralmente usam um nome JSESSIONIDpara armazenar o ID da sessão. Parece algo assim:

Cookie: JSESSIONID =ABAD1D

No lado do servidor, você pode definir o tempo de vida da sessão, bem como se ela será fechada automaticamente quando o navegador for fechado.

Comentários
  • Populares
  • Novas
  • Antigas
Você precisa acessar para deixar um comentário
Esta página ainda não tem nenhum comentário