Cadena de agente de usuario de Microsoft Edge

Cadena de agente de usuario de Microsoft Edge

Me acabo de dar cuenta de que, si bien todos los demás navegadores parecen tener sus propias cadenas de agente de usuario, Microsoft Edge parece verse así:

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 qué tiene Mozilla, Chrome y Safari, y no solo Edge?

Respuesta1

Entonces, ¿por qué tiene Mozilla, Chrome y Safari, y no solo Edge?

Los diseñadores de páginas web son simplemente vagos e intentan impedir que los visitantes utilicen navegadores específicos, porque quieren utilizar un marco más sencillo que sólo es compatible con determinados navegadores.

También es una decisión de diseño deliberada limitar la utilidad de las comprobaciones de agente de usuario. Esta decisión probablemente se base en el hecho (desde la perspectiva de Spartan/Edge Developers) de que, en el pasado, los sitios web buscaban específicamente IE y notificaban a los usuarios que usaran un navegador diferente.

Dado que Edge/Spartan fue el primer intento de Microsoft de modernizar el motor Trident, y el propósito de Edge/Spartan era igualar el conjunto de características de (Blink, AppleWebKit y Gecko) en ese momento, el agente de usuario simplemente se anuncia a sí mismo como si todo fuera unidireccional. para evitar que los diseñadores de páginas web apunten fácilmente a Edge de la misma manera que apuntaron a IE.

Muchos sitios web que visita hoy no se mostrarán bien en IE porque no están codificados correctamente y generalmente muestran una página como lo harían en un navegador antiguo, a pesar de que Internet Explorer 11 admite muchos de los nuevos estándares web. Algunas páginas se mostrarán incorrectamente en IE mientras funcionan perfectamente en otros navegadores como Chrome o Firefox.

También existe un problema con el desplazamiento entrecortado que no desaparece en algunos sitios web incluso después de desactivar el desplazamiento suave, y hay casos en los que elementos importantes no se muestran porque una página web identifica su navegador como IE.

El nuevo motor Spartan de Microsoft se hace pasar por Chrome

Chrome y Firefox también hacen algo similar:

Mozilla/5.0 (Windows NT XY; WOW64) AppleWebKit/537.36 (KHTML, como Gecko) Chrome/50.0.2657.0 Safari/537.36,gzip(gfe),gzip(gfe)"

Vale la pena señalar que el agente de usuario de IE11 es similar:

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

Cambios en la cadena de agente de usuario

Respuesta2

Edge pretendía ser Chrome, Chrome pretendía ser Safari y Safari pretendía ser Mozilla. Y Edge usó EdgeHTML pero no lo reveló, y Chrome usó Blink, pero no lo reveló, pero Chrome fingió usar WebKit. Y Webkit pretendía ser KHTML y KHTML pretendía ser Gecko. Y la confusión abundaba excesivamente en la web.

Tomado de¿Cuál es el nombre de la cadena del agente de usuario para Microsoft Edge?comentario porclaudio

Cadena Microsoft Edge UA:

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

Detallo por qué en esta publicación de blog.

Neowin informó recientemente que el nuevo navegador de Microsoft para Windows 10, Spartan, utiliza la cadena Chrome UA,“Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, como Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/12.0″. Eso se hace a propósito.

También notarás que toda la cadena termina con "Edge/12.0", algo que Chrome no hace.

Debo señalar que esto no es una desviación radical de lo que Microsoft hizo con IE 11, que en Windows 8 dice: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) como Gecko, como se explica en este correo.

¿Qué está husmeando el agente de usuario?

A menudo, los desarrolladores web utilizan UA para detectar el navegador. Mozilla lo explica bien en su blog:

Servir diferentes páginas web o servicios para diferentes navegadores suele ser una mala idea. La Web está destinada a ser accesible para todos, independientemente del navegador o dispositivo que utilicen. Hay formas de desarrollar su sitio web para mejorarlo progresivamente en función de la disponibilidad de funciones en lugar de dirigirse a navegadores específicos.

Aquí hay un gran artículo que explica la historia del Agente de Usuario.

A menudo, los desarrolladores perezosos simplemente buscarán la cadena UA y desactivarán el contenido de su sitio web según el navegador que crean que está utilizando el espectador. Internet Explorer 8 es un punto común de frustración para los desarrolladores, por lo que con frecuencia comprobarán si un usuario está utilizando CUALQUIER versión de IE y desactivarán las funciones.

El equipo de Edge detalla esto aún más profundamente en su blog.

Todas las cadenas de agentes de usuario contienen más información sobre otros navegadores que el navegador real que está utilizando: no sólo tokens, sino también números de versión "significativos".

Cadena UA de Internet Explorer 11:

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

Cadena Microsoft Edge UA:

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

La propiedad userAgent ha sido descrita acertadamente como "un paquete de mentiras en constante crecimiento" por Patrick H. Lauke en las discusiones del W3C. ("o más bien, un acto de equilibrio entre agregar suficientes palabras clave heredadas que no hagan que el antiguo código de detección de UA se caiga de inmediato, y al mismo tiempo intentar transmitir un poco de información realmente útil y precisa").

Recomendamos que los desarrolladores web eviten el rastreo de UA tanto como sea posible; Las características modernas de las plataformas web son casi todas detectables de forma sencilla. Por ejemplo, elModernizarLa biblioteca es una forma fantástica y sencilla de detectar funciones.

Durante el año pasado, vimos algunos sitios de rastreo de UA que se actualizaron para detectar Microsoft Edge... solo para proporcionarle una ruta de código IE11 heredada. Este no es el mejor enfoque, ya que Microsoft Edge coincide con los comportamientos de 'WebKit', no con los de IE11 (cualquier diferencia entre Edge y WebKit son errores que nos interesa corregir).

Según nuestra experiencia, Microsoft Edge funciona mejor en las rutas de código 'WebKit' de estos sitios. Además, dado que Internet está disponible en una variedad más amplia de dispositivos, asuma que los navegadores desconocidos son buenos; no limite su sitio a funcionar solo en un pequeño conjunto de navegadores conocidos actualmente. Si hace esto, es casi seguro que su sitio fallará en el futuro.

Conclusión

Al presentar la cadena Chrome UA, podemos solucionar los trucos que utilizan estos desarrolladores para presentar la mejor experiencia a los usuarios.

Tomado de¿Cuál es el nombre de la cadena del agente de usuario para Microsoft Edge?responder porDavid Voyles.

información relacionada