Cabeçalhos HTTP comuns
Os cabeçalhos HTTP são pares chave-valor enviados no início de cada requisição e resposta. Transportam metadados como tipo de conteúdo, regras de cache e autenticação. Use esta folha para reconhecer os cabeçalhos mais comuns ao construir ou depurar tráfego web.
| Cabeçalho | Direção | Finalidade |
|---|---|---|
| Host | request | Identifies the server's host and port (from the URL). |
| User-Agent | request | Reports the client software (browser, OS, bot) making the request. |
| Accept | request | Lists the response media types (MIME) the client can handle. |
| Authorization | request | Carries credentials (token, Basic auth) to authenticate the client. |
| Content-Type | request/response | States the media type of the request or response body. |
| Content-Length | request/response | Gives the size in bytes of the request or response body. |
| Cookie | request | Sends stored key/value pairs from a previous response back to the server. |
| Set-Cookie | response | Server instructs the client to store a cookie for later requests. |
| Cache-Control | request/response | Directs caching behaviour: no-cache, max-age, private, etc. |
| ETag | response | Opaque identifier for a resource version, used for revalidation. |
| If-None-Match | request | Sends an ETag; server returns 304 if the resource is unchanged. |
| Location | response | Points the client to a new URL for redirects (3xx) or created resources. |
| Access-Control-Allow-Origin | response | Permits a browser to share a response across origins (CORS). |
| X-Forwarded-For | request | Records the client IP as seen through a proxy or load balancer. |
| Referer | request | Indicates the URL of the page that linked to the requested resource. |
Notas
- Os nomes de cabeçalho não diferenciam maiúsculas; por convenção escrevem-se em Title-Case (ex.: Content-Type).
- Cabeçalhos de requisição descrevem o cliente; os de resposta descrevem a resposta do servidor.
- O navegador define muitos cabeçalhos (como Host e Referer) automaticamente — não os forje.
Perguntas frequentes
- Qual a diferença entre cabeçalho de requisição e de resposta?
- Os de requisição são enviados pelo cliente (navegador ou app) ao servidor; os de resposta são devolvidos pelo servidor com sua resposta. Alguns, como Content-Type, aparecem nos dois lados.
- Os cabeçalhos HTTP diferenciam maiúsculas?
- Não. Pela especificação, nomes de cabeçalho não diferenciam maiúsculas, então Content-Type e content-type são iguais. O Title-Case é só convenção.
- Para que serve o cabeçalho Host?
- Host informa ao servidor qual domínio a requisição alvo. É obrigatório em HTTP/1.1 e permite que um servidor hospede vários sites por nome.
- Como a cache funciona com cabeçalhos?
- Cache-Control define por quanto tempo uma resposta pode ser cacheada; ETag e If-None-Match deixam o cliente perguntar 'mudou?' e receber um leve 304 Not Modified.