---
name: azion-verifique-o-status-de-cache-de-uma-resposta
description: >-
  Envie uma requisição com um header de debug e leia se a Azion entregou a resposta pelo cache, junto com a key sob a qual a cópia está armazenada.
---

# Verifique o status de cache de uma resposta

Você verifica se o [Cache](/pt-br/documentacao/plataforma/applications/#cache) entregou uma resposta por uma cópia armazenada requisitando o objeto com um header de debug e lendo dois headers da resposta. A verificação roda de qualquer máquina com `curl`, e não exige nenhuma alteração na aplicação.

A mesma resposta carrega a cache key sob a qual a cópia está armazenada, que é o argumento que um purge por cache key recebe. Para o formato da key e cada valor de status, consulte [Cache keys](/pt-br/documentacao/plataforma/applications/cache/cache-keys/).

---

## Pré-requisitos

- O `curl` na sua máquina.
- A URL de um objeto que a sua aplicação entrega.

---

## Requisite os headers de debug

O header de requisição `Pragma: azion-debug-cache` faz a Azion retornar o estado de cache da resposta. Para lê-lo:

1. **Requisite o objeto com o header de debug**

   A flag `-I` pede apenas os headers da resposta, então o corpo não é baixado:

   ```bash
   curl -sI -H "Pragma: azion-debug-cache" https://www.example.com/static/site.js
   ```

2. **Leia o status de cache**

   O header `x-cache` carrega três valores: o status de cache, o endereço IP do servidor que respondeu a requisição e o protocolo. Em HTTP/2, os nomes dos headers chegam em minúsculas:

   ```http
   x-cache: MISS from 192.0.2.10 with HTTP/2.0
   x-cache-key: httpswww.example.com/static/site.js
   ```

3. **Leia a cache key**

   O header `x-cache-key` carrega a key sob a qual a cópia está armazenada. Um purge por cache key recebe esse valor como argumento.

4. **Execute o mesmo comando novamente**

   Compare o status da segunda resposta com o da primeira.

Agora você sabe se a resposta veio do cache, da origem, ou não foi colocada em cache.

---

## Leia o status

`HIT` significa que a resposta foi entregue por uma cópia armazenada e a origem não foi consultada. `MISS` significa que o objeto não estava no cache, então a Azion o buscou na origem e pode armazenar a resposta para as requisições seguintes. Um `-` nos dois headers significa que o conteúdo está restrito de cache.

Os outros valores que uma resposta pode carregar são `EXPIRED`, `STALE`, `UPDATING`, `REVALIDATED` e `BYPASS`. Para o significado de cada um, consulte [Cache keys](/pt-br/documentacao/plataforma/applications/cache/cache-keys/).

Um `-` em uma requisição `POST` ou `OPTIONS` significa que o cache está desativado para esse método. Para ativá-lo, consulte [Armazene em cache respostas de POST e OPTIONS](/pt-br/documentacao/guias/performance-e-confiabilidade/cache-e-purge/cache-de-respostas-post-e-options/).

---

## Próximos passos

- [Cache keys](/pt-br/documentacao/plataforma/applications/cache/cache-keys.md): O formato da key, cada variação que ela pode carregar e os oito valores de status de cache.
- [Solucionar problemas de Applications](/pt-br/documentacao/plataforma/applications/solucao-de-problemas.md#cache): O que verificar quando uma resposta não traz status, ou continua MISS em cada requisição.
- [Purgue conteúdo em cache](/pt-br/documentacao/guias/performance-e-confiabilidade/cache-e-purge/purgar-conteudo-em-cache.md): Remova a cópia que esta key nomeia, antes do fim do seu TTL.
- [Expiração e atualização](/pt-br/documentacao/plataforma/applications/cache/expiracao-e-atualizacao.md): Por que uma requisição é respondida por uma cópia, pela origem, ou não é colocada em cache.
