Verificando o cabeçalho HTTP

i18n Checker

Rex Swain's HTTP Viewer

HTTP Header Checker by KeyCDN

Pergunta: Como posso verificar as informações sobre codificação de caracteres enviadas no cabeçalho HTTP de um documento web?

É muito importante indicar claramente a codificação de caracteres (charset) de um documento servido na Web. Se tal indicação não for feita, o agente receptor do documento poderá interpretá-lo de maneira incorreta. Um navegador, por exemplo, poderá mostrar caracteres aleatórios tornando um texto ilegível. Uma das maneiras de se indicar a codificação de caracteres de um documento é colocando tal informação no parâmetro charset do cabeçalho Content-Type.

Em particular, é importante notar que uma codificação de caracteres declarada no cabeçalho HTTP tem precedência sobre aquelas declaradas no documento HTML e/ou nas CSS.

The i18n Checker

A ferramenta Internationalization Checker tool, desenvolvida pelo W3C faz a verificação de páginas web em vários aspectos que dizem respeito à internacionalização. Ela fornece um sumário com as informações relacionadas aos principais aspectos da internacionalização, tais como codificação de caracteres, declaração de idioma, etc. No sumário você poderá verificar se a declaração de caracteres foi feita no cabeçalho HTTP e qual foi a declaração.

A ferramenta i18n Checker é bastante útil, pois ela mostra também outras declarações de caracteres feitas no documento e alerta caso encontre diferenças.

Uso de um serviço disponível na Web

Pode-se usar um dos vários serviços online, que mostram os cabeçalhos HTTP e o código fonte (HTML/XHTML) de um documento, bastando que você entre com o endereço do documento a verificar:

Nota: O W3C não tem qualquer tipo de vínculo com estes serviços.

Nos cabeçalhos HTTP, procure pelo cabeçalho Content-Type e em particular pelo parâmetro charset como mostrado no exemplo a seguir:

Content-Type: text/html; charset=utf-8

Nota: O parâmetro charset poderá estar ausente. Isto é perfeitamente normal se a codificação de caracteres foi indicada no próprio documento.

Use the developer tools in a browser

Modern desktop browsers usually contain a set of web developer tools, and they can be used to view HTTP headers of a web document and its related resources. Here's how to do it in major browsers.

Chrome, Edge, Firefox, and Opera

  1. Open DevTools by pressing Control+Shift+I or Command+Option+I (Mac).
  2. Click the Network tab. Right now the Network panel is empty.
  3. Reload the page to log some network activity. Each row represents a resource. The top resource is usually the main HTML document.
  4. Click a resource and open the Headers tab to view the HTTP headers.
  5. In the HTTP headers, look for the Content-Type header, and in particular for the charset parameter.

Safari

  1. First ensure that the Develop menu is enabled: choose Safari > Settings, click Advanced, then select “Show Develop menu in menu bar”.
  2. Show page resoueces by clicking Develop > Show Page Resources.
  3. Press Command+Option+0 to show the details sidebar.
  4. Reload the page to log some network activity.
  5. Click a resource from the left sidebar and the HTTP headers will appear in the right sidebar.
  6. In the HTTP headers, look for the Content-Type header, and in particular for the charset parameter.

Uso de telnet ou outra ferramenta linha de comando

Esta maneira requer mais experiência, contudo pode ser facilmente automatizada. Uma ferramenta via linha de comando pode ser wget (com as opções -S ou -s).

A propósito

Alguns servidores transcodificam documentos Web com diferentes codificações de caracteres de acordo com o cliente a que servem. Isto acontece, por exemplo, com alguns servidores da Rússia. Aqui se requer um cuidado especial, pois para um navegador rodando em ambiente Mac ou em ambiente Windows haverá conflito com a codificação de um serviço online ou com o serviço de validação da marcação do W3C (os quais são baseados em sistemas UNIX).