Las cadenas de agentes de usuario de todos los navegadores populares, incluso las de Internet Explorer, comienzan con Mozilla/
. ¿Por qué es este el caso?
user-agent
Sashaeve
fuente
fuente
Respuestas:
Es una historia larga y triste .
En resumen:
Mozilla/1.0 (Win3.1)
. Se renombra públicamente a Netscape, pero en su User-Agent mantiene su nombre original.Mozilla/
porque los servidores web rutinariamente rastrean y sirven páginas con marcos, una característica compatible con Netscape e IE, pero no con otros navegadores de la época, solo para Netscape.Mozilla/
, como lo hicieron los navegadores anteriores. También resultan muchas otras tonterías, como el moderno Agente de usuario de Chrome que simultáneamente afirma ser Mozilla, Chrome, Safari y 'como Gecko'.fuente
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.1
.userAgent
String es un desastre, entonces, ¿por qué no está desaprobado y / o eliminado?Creo que tenía que ver con: http://en.wikipedia.org/wiki/User_agent#User_agent_spoofing
En los primeros días, Netscape (código llamado Mozilla) era el principal rival de IE, y querían evitar ser rechazados por sitios que rechazan navegadores que no sean Netscape.
fuente
Como mencionó @Jason "Es una larga historia". Resumiendo esa historia "es solo que cada navegador finge ser Mozilla"
Después de probar todo, finalmente he usado: http://www.useragentstring.com/
Puede usar el sitio web anterior para obtener el agente de usuario y el sistema operativo formateados.
Tienen una API que puedes usar directamente ...
fuente
Porque así es como se identificó Netscape, y Microsoft quería trabajar con sitios que detectarían Netscape y rechazarían cualquier otra cosa.
fuente
La razón de esto son las guerras infames del navegador .
En resumen, los navegadores comenzaron a pretender ser otro navegador, porque algunos sitios web mostraban contenido en función de qué navegador lo solicitaba y también querían contenido para otros navegadores.
Me parece sorprendente que todavía no se haya resuelto hasta el día de hoy. Dado
userAgent
que no se puede eliminar de forma segura por motivos heredados, ¿por qué no se introdujo alguna nueva característica que identifique claramente un navegador? Sí, la mayoría de las veces no necesita la detección del navegador, sino una detección de características, ¡pero tampoco está integrado en JS!fuente
Mozilla / 5.0 es el token general que dice que el navegador es compatible con Mozilla, y es común a casi todos los navegadores en la actualidad. para más detalles haga clic aquí
fuente