User-Agent

O cabeçalho de requisição User-Agent é uma cadeia de caracteres característica que permite servidores e pares de rede identificar a aplicação, sistema operacional, fornecedor, e/ou versão do agente de usuário requisitante.

Por favor leia Detectando o navegador usando o agente de usuário (Browser detection using the user agent) para por quê servir diferentes páginas Web ou serviços para diferentes navegadores é geralmente uma má ideia.

Tipo de cabeçalho Request header
Forbidden header name não

Sintaxe

User-Agent: <product> / <product-version> <comment>

Formato comum para navegadores web:

User-Agent: Mozilla/5.0 (<system-information>) <platform> (<platform-details>) <extensions>

Diretivas

<product>
Um identificador do produto - seu nome ou codinome de desenvolvimento.
<product-version>
Número da versão do produto.
<comment>
Zero ou mais comentários contendo mais detalhes; informação de subproduto, por exemplo.

Firefox UA string

Para mais cadeias de caracteres de agente de usuário do Firefox e Gecko, veja a referência para cadeias de caracteres de agente de usuário do Firefox (Firefox user agent string reference). A cadeia de caracteres UA do Firefox é quebrada em 4 componentes:

Mozilla/5.0 (platform; rv:geckoversion) Gecko/geckotrail Firefox/firefoxversion
  1. Mozilla/5.0 é o token geral que diz que o navegador é compatível com Mozilla. Por razões históricas, quase todo navegador envia isso hoje.
  2. platform descreve a plataforma nativa que navegador está executando (Windows, Mac, Linux, Android, etc.), e se é um telefone celular. Telefones Firefox OS simplesmente dizem Mobile — a web é a plataforma. Note que platform pode consistir de múltiplos tokens separador por  "; "(ponto e vírgula). Veja abaixo para mais detalhes e exemplos.
  3. rv:geckoversion indica a versão de release do Gecko (como a "17.0"). Em navegadores recentes, geckoversion é o mesmo que firefoxversion.
  4. Gecko/geckotrail indica que o navegador é baseado no Gecko. (No Desktop, geckotrail é sempre a cadeia de caracteres fixa 20100101.)
  5. Firefox/firefoxversion indica que o navegador é o Firefox, e provém a versão (como a "17.0").

Exemplos

Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0
Mozilla/5.0 (Macintosh; Intel Mac OS X x.y; rv:42.0) Gecko/20100101 Firefox/42.0

Chrome UA string

A cadeia de caracteres do agente de usuário do Chrome (ou baseados em Chromium/Blink) é similar ao do Firefox. Para compatibilidade, ele adiciona cadeias de caracteres como KHTML, like Gecko e Safari.

Exemplos

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36

Opera UA string

O navegador Opera também é baseado no Blink, o motivo pelo qual se parecem muito, mas adiciona "OPR/<version>".

Exemplos

Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36 OPR/38.0.2220.41

Mais antigo, versões do Opera baseados no Presto usavam:

Opera/9.80 (Macintosh; Intel Mac OS X; U; en) Presto/2.2.15 Version/10.00
Opera/9.60 (Windows NT 6.0; U; en) Presto/2.1.1

Safari UA string

Neste exemplo, a cadeia de caracteres de agente de usuários é a versão de móvel do Safari. Ela contém a palavra "Mobile".

Exemplos

Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1

Internet Explorer UA string

Exemplos

Mozilla/5.0 (compatible; MSIE 9.0; Windows Phone OS 7.5; Trident/5.0; IEMobile/9.0)

Crawler e bot UA strings

Exemplos

Googlebot/2.1 (+http://www.google.com/bot.html)

Especificações

Especificação Título
RFC 7231, sessão 5.5.3: User-Agent Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content
RFC 2616, sessão 14.43: User-Agent Hypertext Transfer Protocol -- HTTP/1.1

Compatibilidade de navegador

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
User-AgentChrome Full support YesEdge Full support 12Firefox Full support YesIE Full support YesOpera Full support YesSafari Full support YesWebView Android Full support YesChrome Android Full support YesFirefox Android Full support YesOpera Android Full support YesSafari iOS Full support YesSamsung Internet Android Full support Yes

Legend

Full support  
Full support

Veja também