HTTP & Request Debugging

gerador de header Cache-Controlentenda armazenamento e reutilização

Analise um cabeçalho de resposta ou monte outro no formulário. A idade atual é uma hipótese para o exemplo.

gerador de header Cache-Control

Cache-Control da resposta

Os valores ficam neste navegador. Nenhuma requisição é enviada à origem.

Cabeçalho atual do resultado

Navegador / cache privado

Fresca neste exemplo de idade

max-age: duração de 3600 segundos

Frescor restante: 3600 segundos

Cache compartilhado / CDN

Fresca neste exemplo de idade

s-maxage: duração de 86400 segundos

Frescor restante: 86400 segundos

Depois de vencer, estas diretivas exigem validação antes da reutilização.

Supõe uma resposta já armazenada e a idade abaixo. Frescor não garante armazenamento nem reutilização; outros cabeçalhos e regras da plataforma continuam valendo.

Use um current_age suposto de 0 a 2147483648. Age sozinho não cobre todo o tempo de trânsito e residência. Este exemplo é estático.

Diretivas analisadas

public

Permite armazenamento compartilhado quando as demais condições são atendidas.

Linha 1, coluna 16

max-age=3600

Duração privada e compartilhada quando não há s-maxage.

Linha 1, coluna 24

s-maxage=86400

Substitui max-age em caches compartilhados, não no navegador.

Linha 1, coluna 38

Exibindo 3 de 3 diretivas

Notas da política

Nenhum problema detectado nas diretivas modeladas. Isso não verifica a implantação.

3 diretivas · 0 notas

Uma cópia pode vencer no navegador e continuar fresca no cache compartilhado. O gerador de header Cache-Control separa as duas durações para ajudar a investigar esse desencontro com valores concretos.

Ao preparar um cabeçalho Cache-Control, você pode manter a análise da resposta original e montar uma política diferente no formulário. O cache do navegador tem sua própria explicação, e as extensões desconhecidas continuam no texto analisado.

Por que usar este gerador de header Cache-Control

Guarde as pistas da configuração

O gerador de header Cache-Control preserva repetições, ordem e argumentos entre aspas. A vírgula em private="X-Foo, X-Bar" pertence ao argumento. O formulário independente não substitui a entrada que você está investigando.

Um cabeçalho se divide em cartões que preservam as diretivas, ao lado de controles de construção independentes.

Compare dois períodos de frescor

O exemplo usa max-age=3600 e s-maxage=86400. Com idade suposta de 4000 segundos, a cópia do navegador está vencida e a compartilhada ainda tem 82400 segundos de frescor. Isso não garante que uma requisição será atendida pelo cache.

Um navegador e um cache compartilhado têm períodos de frescor diferentes com o mesmo marcador de idade.

Três escolhas antes de definir a duração

01

Cole apenas o campo relevante

A entrada aceita um valor em uma linha ou várias linhas Cache-Control:. Um bloco completo com Age ou ETag é recusado. Assim, campos externos não são ignorados silenciosamente em uma análise aparentemente completa.

02

Diferencie vazio de zero

Um tempo vazio omite a diretiva, enquanto 0 gera zero segundos explícitos. Carregar o exemplo e limpar mostram uma prévia antes da aplicação. Desfazer restaura uma vez as duas entradas, a idade e o resultado anterior.

03

Teste a hipótese de idade

A análise automática espera 350 ms após a edição. Desative para usar o botão ou Ctrl/Cmd + Enter. Editar bloqueia imediatamente a exportação do resultado anterior. A idade é estática, não uma contagem regressiva medida.

Diretivas, argumentos e efeitos

Leia os argumentos com suas posições

Nomes não diferenciam maiúsculas de minúsculas e saem em minúsculas. Argumentos, aspas, ordem e repetições são mantidos. Elementos vazios entre vírgulas são pulados; cada diretiva informa linha e coluna.

Monte diretivas de resposta

Nove opções e quatro campos de tempo cobrem os ajustes comuns. max-age e s-maxage, além das extensões stale, aceitam segundos inteiros até 2147483648. Escolhas conflitantes permanecem visíveis com explicações, sem remoção automática.

Separe duração de permissão

no-cache comum exige validação bem-sucedida antes da reutilização; no-store proíbe armazenar. Uma duração positiva não comprova todos os requisitos de armazenamento. s-maxage substitui max-age no cache compartilhado, sem aumentar a duração do navegador.

Veja quando falta contexto

Extensões desconhecidas, restrições por campo e must-understand precisam de mais informações. Duplicatas conhecidas e argumentos inválidos impedem uma conclusão numérica. A lista mostra 50 por vez; cópia e arquivo de texto incluem o cabeçalho atual completo.

O que um cabeçalho consegue mostrar

Somente Cache-Control de resposta
Não há consulta de URL nem avaliação conjunta de ETag, Vary e Expires. Diretivas de requisição são preservadas com uma nota de escopo. Configurações de servidor, upload e arquivos em lote ficam fora desta ferramenta.
Sem horário real de expiração
O cálculo subtrai a idade suposta da duração. Não inclui correção de Date, trânsito nem residência. Sem duração explícita, Expires ou regras heurísticas ainda podem valer; isso não significa automaticamente que a resposta não pode ser armazenada.
Sem validação de fornecedor
Regras de CDN, autenticação, status e chave de cache podem mudar o comportamento. Ausência de notas não é aprovação para produção. A ferramenta não limpa caches nem garante armazenamento ou acertos.
Entradas e valores limitados
São aceitas 16384 unidades UTF-16 e 128 diretivas. Erros de sintaxe bloqueiam a exportação e indicam a posição. Segundos analisados fora da faixa mantêm o texto sem inferência numérica; formulário e idade têm limite de 2147483648.
Tolerância não aumenta o frescor
stale-while-revalidate e stale-if-error permitem certas reutilizações depois do vencimento. Não são somados ao período de frescor. A combinação com restrições de validação gera uma nota, sem simular cada implementação.

Dúvidas sobre o gerador de header Cache-Control

Como no-cache e no-store afetam o armazenamento?

no-cache comum permite armazenar, mas exige validação bem-sucedida antes de cada reutilização. no-store proíbe armazenar a resposta. Nenhum dos dois manda apagar todas as cópias já existentes.

Para que serve immutable na política de cache?

immutable informa que a representação não vai mudar enquanto estiver fresca, reduzindo validações comuns. Não define uma duração nem impede toda atualização forçada. Depois do vencimento, valem as regras normais. Seus argumentos são ignorados e repetições equivalem a uma ocorrência.

Quais caches usam max-age e quais usam s-maxage?

max-age se aplica a caches privados e compartilhados sem s-maxage. s-maxage define a duração compartilhada e exige validação após o vencimento. Ele não prolonga a duração usada pelo navegador.

Como escolher public ou private?

public pode ser adequado para respostas compartilháveis entre usuários; private normalmente limita o armazenamento a um cache privado. Conteúdo e autenticação também precisam ser avaliados. private não criptografa dados, e a forma com lista de campos tem outro alcance.

Como stale-while-revalidate trata uma resposta vencida?

Dentro da janela indicada, uma resposta vencida pode ser reutilizada enquanto ocorre uma tentativa de validação em segundo plano. Isso depende das requisições e do suporte do cache. Não garante a entrega da cópia antiga nem a transforma em fresca.

Encontrou um problema?

Revise a política antes de colocar no ar

gerador de header Cache-Control: confira o cabeçalho com uma idade suposta e compare os dois caches antes de copiar o resultado.