Cadeia do Microsoft Edge User Agent

8

Acabei de notar que, embora todos os outros navegadores pareçam ter suas próprias sequências de agente do usuário, o Microsoft Edge parece ser algo assim:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393

Por que ele tem o Mozilla, o Chrome e o Safari, e não apenas o Edge?

    
por PulseJet 01.02.2017 / 16:49

2 respostas

2

So Why does it have Mozilla, Chrome and Safari, and not just Edge in it?

Os designers de páginas da Web são simplesmente preguiçosos e tentam impedir que os visitantes usem navegadores específicos, porque desejam usar a estrutura mais fácil, que é suportada apenas por certos navegadores.

Também é uma decisão deliberada de design limitar a utilidade das verificações de agente de usuário. Essa decisão provavelmente baseada no fato (da perspectiva dos desenvolvedores do Spartan / Edge), é que, no passado, os sites procurariam especificamente pelo IE e notificariam os usuários a usarem um navegador diferente.

Como o Edge / Spartan foi a primeira tentativa da Microsoft de modernizar o mecanismo Trident, e o propósito do Edge / Spartan era combinar com o conjunto de recursos (Blink, AppleWebKit e Gecko) na época, o agente simplesmente se anunciava como sendo tudo é uma maneira de evitar que os designers de páginas da Web acessem facilmente o Edge da mesma maneira que eles segmentaram o IE.

Many websites that you visit today will not display well in IE because they are not coded properly and usually display a page like they would in an old browser, even though Internet Explorer 11 supports many of the new web standards. Some pages will display incorrectly in IE while working perfectly fine on other browsers such as Chrome or Firefox.

There's also a problem with jerky scrolling that doesn't go away for some websites even after you turn off smooth scrolling, and there are cases in which important elements will not display because a webpage identifies your browser as IE.

O novo motor Spartan da Microsoft se mascara como Chrome

O Chrome e o Firefox também fazem algo semelhante:

Mozilla/5.0 (Windows NT X.Y; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2657.0 Safari/537.36,gzip(gfe),gzip(gfe)"

Vale ressaltar que o user agent do IE11 é semelhante:

Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko

Alterações na string do agente do usuário

    
por 01.02.2017 / 17:22
1

Edge pretended to be Chrome, and Chrome pretended to be Safari, and Safari pretended to be Mozilla. And Edge used EdgeHTML but revealed it not, and Chrome used Blink, but revealed it not, but Chrome pretended to use WebKit. And Webkit pretended to be KHTML, and KHTML pretended to be Gecko. And confusion abounded excessively on the face of the web.

Extraído de O que é o agente do usuário? nome da string para o Microsoft Edge? comentário Claude

Microsoft Edge UA string:

Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.10136

I detail why in this blog post.

Neowin recently reported that Microsoft’s new browser for Windows 10, Spartan, uses the Chrome UA string, “Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/12.0″. That is done on purpose.

You’ll also notice that the entire string ends with “Edge/12.0″, which Chrome does not.

I should point out, that this isn’t a redical departure from what Microsoft did with IE 11, which on Windows 8 reads: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko, as explained in this post.

What is User Agent sniffing?

Often, web developers will UA sniffing for browser detection. Mozilla explains it well on their blog:

Serving different Web pages or services to different browsers is usually a bad idea. The Web is meant to be accessible to everyone, regardless of which browser or device they’re using. There are ways to develop your web site to progressively enhance itself based on the availability of features rather than by targeting specific browsers.

     

Este é um ótimo artigo explicando a história do agente do usuário.

     

Muitas vezes, os desenvolvedores preguiçosos apenas detectam a string UA e desativam o conteúdo em seu site com base em qual navegador eles acreditam que o espectador está usando. O Internet Explorer 8 é um ponto comum de frustração para os desenvolvedores, portanto, eles freqüentemente verificarão se um usuário está usando QUALQUER versão do IE e desativará os recursos.

     

The Edge equipe detalha isso mesmo mais fundo em seu blog.

     

Todas as strings de agentes de usuários contêm mais informações sobre outros navegadores do que o navegador real que você está usando, não apenas tokens, mas também números de versão "significativos".

     

Cadeia UA do Internet Explorer 11:

     

Mozilla / 5.0 (Windows NT 6.3; Trident / 7.0; rv: 11.0) como o Gecko

     

Cadeia UA do Microsoft Edge:

     

Mozilla / 5.0 (Windows NT 10.0) AppleWebKit / 537.36 (KHTML, como o Gecko) Chrome / 42.0.2311.135 Safari / 537.36 Edge / 12.10136

     

A propriedade userAgent foi apropriadamente descrita como “um pacote crescente de mentiras” por Patrick H. Lauke nas discussões do W3C. ("Ou melhor, um ato de equilíbrio de adicionar palavras-chave herdadas o suficiente para que o código antigo de farejamento de UA não caia imediatamente, enquanto ainda tenta transmitir um pouco de informações realmente úteis e precisas").

     

Recomendamos que os desenvolvedores da web evitem o máximo de sniffing do UA; os recursos modernos da plataforma da web são quase todos detectáveis de maneiras fáceis. Por exemplo, a biblioteca Modernizr é uma maneira fantástica e simples de detectar recursos.

     

Durante o ano passado, vimos alguns sites de farejamento de UAs que foram atualizados para detectar o Microsoft Edge ... apenas para fornecer um caminho de código herdado do IE11. Essa não é a melhor abordagem, pois o Microsoft Edge corresponde a comportamentos "WebKit", e não a comportamentos do IE11 (quaisquer diferenças do Edge-WebKit são erros que estamos interessados em corrigir).

     

Em nossa experiência, o Microsoft Edge funciona melhor nos caminhos de código "WebKit" nesses sites. Além disso, com a Internet disponível em uma variedade maior de dispositivos, considere que os navegadores desconhecidos são bons. Não restrinja seu site a um pequeno conjunto de navegadores conhecidos atualmente. Se você fizer isso, seu site quase certamente se quebrará no futuro.

     

Conclusão

     

Ao apresentar a string UA do Chrome, podemos contornar os hacks que esses desenvolvedores estão usando para apresentar a melhor experiência aos usuários.

Extraído de Qual é o nome da string do agente do usuário para o Microsoft Edge? responda por Dave Voyles .

    
por 01.02.2017 / 17:05