← HTTP/HTTPS: aplicações e diagnóstico
03 / 12 · 40 MIN

Cache, variantes e validação

Escolhe regras de reutilização sem confundir desempenho e isolamento de dados.

Conceito e mecanismo

Uma cache guarda respostas para reutilização sob condições definidas. no-cache, sem argumentos, exige validação bem-sucedida antes de reutilizar; não proíbe necessariamente guardar. no-store dá a instrução de não armazenar, mas não apaga por magia cópias anteriores nem substitui todos os controlos de segurança. private restringe armazenamento por caches partilhadas, podendo permitir uma cache privada segundo as restantes regras. Não confundas o termo com autenticação do utilizador. A configuração do proxy pode contrariar o que a aplicação emite, pelo que é necessário observar os campos efetivos e as regras aplicadas. A política deve corresponder à sensibilidade e variabilidade real do conteúdo.

Aplicação guiada

Num caso fictício, duas identidades recebem a mesma representação personalizada porque a cache usa apenas o URL e ignora private. Contém a exposição, invalida entradas afetadas e valida a correção com identidades distintas. Acrescentar uma diretiva futura não prova que o conteúdo antigo desapareceu. Para variantes por linguagem, Vary: Accept-Language permite considerar esse campo na seleção; não é uma autorização de acesso. Um GET condicional com If-None-Match pode receber 304 quando a representação guardada adequada continua válida. O cliente atualiza metadados aplicáveis e reutiliza o corpo existente. Substituí-lo por corpo vazio confunde ausência de conteúdo na resposta de validação com ausência de dados no recurso.

NA PRÁTICA

no-cache pede validação; no-store pede não guardar; private impede armazenamento numa cache partilhada.

Armadilhas comuns

no-cache como no-store; diretiva nova como purge; Vary como autorização; 304 como recurso vazio.

Tópicos relacionados: O pedido e a representação pretendida · Métodos, estados e repetição controlada · Versões e delimitação de mensagens

Leva esta ideia contigo

Valida quem pode reutilizar cada representação, em que condições e com que evidência.

Criar conta

Referência: HTTP Caching · DR HTTP/HTTPS 2026-09; HTTP RFCs 9110–9114; selected TLS 1.3 and NGINX/curl guidance