Sessão em HTTP
Os sessões funcionam com base em cookies. As sessões permitem que o servidor se lembre do cliente e armazene informações para ele.
Por exemplo, um visitante de um site pode adicionar produtos ao carrinho de uma loja. E após recarregar a página, o servidor identifica o cliente e mostra a ele os produtos que foram adicionados neste navegador.
Vamos entender como isso funciona. Como você já sabe, o protocolo HTTP não mantém estado no sentido de que o servidor não pode distinguir de qual cliente veio uma solicitação. Portanto, neste caso, um caminho alternativo é usado.
Sua essência é a seguinte.
Na primeira solicitação do cliente, o servidor
define um cookie com uma string aleatória
única. Esse cookie é chamado de
sessão e geralmente tem o
nome sessid.
O servidor também armazena uma lista de todos os cookies de sessão e associa a eles os dados necessários. Por exemplo, a lista de produtos selecionados na loja.
Na próxima solicitação do cliente, ele enviará o cookie de sessão para o servidor e o servidor o identificará por esse cookie e poderá obter os dados que estão salvos no servidor para esse cliente.
O protocolo HTTP não armazena dados entre solicitações. No entanto, o servidor pode distinguir usuários. Como isso é implementado?