Alternativa C
A questão aborda a necessidade de manter o estado da aplicação web em um protocolo que, por natureza, não guarda histórico das interações. Para resolver isso no lado do servidor, a ferramenta adequada é a Session.
Análise Detalhada
O Problema do Protocolo HTTP
O protocolo HTTP é classificado como stateless (sem estado). Isso significa que cada requisição enviada pelo navegador ao servidor é tratada como uma nova interação independente. O servidor não tem memória automática de quem enviou a requisição anterior ou qual foi o resultado dela.
A Solução: Session
Para contornar essa limitação em sistemas como o de e-commerce descrito (login, carrinho de compras), utiliza-se mecanismos de gerenciamento de sessão.
- Localização: Os dados são armazenados exclusivamente no servidor.
- Identificação: Uma chave única (Session ID) é gerada para identificar o usuário, geralmente transmitida através de cookies ou na URL.
- Função: Permite que o sistema reconheça o usuário autenticado e mantenha informações como itens no carrinho até que ele finalize a compra ou saia do site.
Diferença entre Session e Cookies
É comum haver confusão entre esses dois conceitos, mas a distinção fundamental reside em onde os dados ficam guardados:
| Recurso | Onde fica armazenado? | Uso principal |
|---|
| Session | No Servidor (Backend) | Dados sensíveis e de estado (login, carrinho) |
| Cookie | No Navegador (Cliente) | Armazenamento de tokens ou preferências leves |
A questão especifica que Tatiane precisa de um "ferramental específico das tecnologias servidoras". Como os Cookies são gerenciados pelo cliente (navegador), a Session é a resposta correta para o recurso do servidor.
Outras Alternativas
- Cache: Utilizado para melhorar a performance armazenando cópias de recursos, não para gerenciar estado de usuário.
- Header: É parte da estrutura de cabeçalho da requisição/resposta HTTP, não um mecanismo de persistência de dados de sessão.
- Vary: É um tipo de header usado para controle de cache, indicando como o servidor deve variar a resposta baseada em outros cabeçalhos.
Conclusão
Como a necessidade é de autenticação e manutenção de dados do usuário no ambiente do servidor devido à natureza sem estado do HTTP, o recurso correto é a Session.