Microsoft Edge-Benutzeragent-Zeichenfolge

Microsoft Edge-Benutzeragent-Zeichenfolge

Mir ist gerade aufgefallen, dass alle anderen Browser zwar über eigene User-Agent-Strings zu verfügen scheinen, die von Microsoft Edge jedoch ungefähr so ​​aussehen:

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

Warum sind Mozilla, Chrome und Safari und nicht nur Edge darin enthalten?

Antwort1

Warum sind also Mozilla, Chrome und Safari enthalten und nicht nur Edge?

Webseiten-Designer sind einfach faul und versuchen, Besucher von der Nutzung bestimmter Browser auszuschließen, weil sie das einfachere Framework verwenden möchten, das nur von bestimmten Browsern unterstützt wird.

Es ist auch eine bewusste Designentscheidung, die Nützlichkeit von User-Agent-Prüfungen einzuschränken. Diese Entscheidung basiert wahrscheinlich (aus Sicht der Spartan/Edge-Entwickler) auf der Tatsache, dass Websites in der Vergangenheit gezielt nach IE suchten und Benutzer aufforderten, einen anderen Browser zu verwenden.

Da Edge/Spartan der erste Versuch von Microsoft war, die Trident-Engine zu modernisieren, und der Zweck von Edge/Spartan darin bestand, den damaligen Funktionsumfang von Blink, AppleWebKit und Gecko zu erreichen, ist die einfache Tatsache, dass sich der Benutzeragent als alles darstellend präsentiert, eine Möglichkeit, Webseiten-Designer daran zu hindern, Edge auf die gleiche Weise ins Visier zu nehmen wie zuvor den Internet Explorer.

Viele Websites, die Sie heute besuchen, werden im Internet Explorer nicht richtig angezeigt, da sie nicht richtig codiert sind und normalerweise eine Seite wie in einem alten Browser anzeigen, obwohl Internet Explorer 11 viele der neuen Webstandards unterstützt. Einige Seiten werden im Internet Explorer falsch angezeigt, während sie in anderen Browsern wie Chrome oder Firefox einwandfrei funktionieren.

Außerdem gibt es das Problem des ruckartigen Scrollens, das bei manchen Websites auch dann nicht verschwindet, wenn Sie das sanfte Scrollen deaktivieren. Außerdem gibt es Fälle, in denen wichtige Elemente nicht angezeigt werden, weil eine Webseite Ihren Browser als IE identifiziert.

Microsofts neue Spartan-Engine tarnt sich als Chrome

Chrome und Firefox machen etwas Ähnliches:

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

Es ist erwähnenswert, dass der Benutzeragent von IE11 ähnlich ist:

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

Änderungen an User-Agent-Strings

Antwort2

Edge gab vor, Chrome zu sein, und Chrome gab vor, Safari zu sein, und Safari gab vor, Mozilla zu sein. Und Edge verwendete EdgeHTML, gab es aber nicht preis, und Chrome verwendete Blink, gab es aber nicht preis, aber Chrome gab vor, WebKit zu verwenden. Und Webkit gab vor, KHTML zu sein, und KHTML gab vor, Gecko zu sein. Und im Internet herrschte maßlose Verwirrung.

Genommen vonWie lautet der User-Agent-String-Name für Microsoft Edge?Kommentar vonClaude

Microsoft Edge UA-Zeichenfolge:

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

In diesem Blogbeitrag erkläre ich ausführlich, warum das so ist.

Neowin berichtete kürzlich, dass Microsofts neuer Browser für Windows 10, Spartan, den Chrome UA-String verwendet,„Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, wie Gecko) Chrome/39.0.2171.71 Safari/537.36 Edge/12.0“. Dies geschieht mit Absicht.

Sie werden auch feststellen, dass die gesamte Zeichenfolge mit „Edge/12.0“ endet, was bei Chrome nicht der Fall ist.

Ich sollte darauf hinweisen, dass dies keine radikale Abkehr von dem ist, was Microsoft mit IE 11 gemacht hat, der unter Windows 8 lautet: Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) wie Gecko, wie in diesem Beitrag erläutert.

Was ist User-Agent-Sniffing?

Webentwickler nutzen häufig UA-Sniffing zur Browsererkennung. Mozilla erklärt es gut in seinem Blog:

Es ist normalerweise keine gute Idee, verschiedenen Browsern verschiedene Webseiten oder Dienste anzubieten. Das Internet soll für jeden zugänglich sein, unabhängig davon, welchen Browser oder welches Gerät er verwendet. Es gibt Möglichkeiten, Ihre Website so zu entwickeln, dass sie sich schrittweise verbessert, je nach Verfügbarkeit von Funktionen, anstatt sich auf bestimmte Browser auszurichten.

Hier ist ein großartiger Artikel, der die Geschichte des User Agent erklärt.

Häufig suchen faule Entwickler einfach nach dem UA-String und deaktivieren Inhalte auf ihrer Website, je nachdem, welchen Browser der Betrachter ihrer Meinung nach verwendet. Internet Explorer 8 ist für Entwickler ein häufiger Grund zur Frustration, daher prüfen sie häufig, ob ein Benutzer IRGENDEINE Version von IE verwendet, und deaktivieren Funktionen.

Das Edge-Team geht in seinem Blog noch ausführlicher darauf ein.

Alle Benutzeragenten-Strings enthalten mehr Informationen über andere Browser als der tatsächlich von Ihnen verwendete Browser – nicht nur Token, sondern auch „aussagekräftige“ Versionsnummern.

UA-Zeichenfolge von Internet Explorer 11:

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

Microsoft Edge UA-Zeichenfolge:

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

Die userAgent-Eigenschaft wurde von Patrick H. Lauke in W3C-Diskussionen treffend als „ein immer größer werdender Haufen Lügen“ beschrieben. („oder eher ein Balanceakt, bei dem man genügend alte Schlüsselwörter hinzufügt, die alten UA-Sniffing-Code nicht sofort zum Absturz bringen, und gleichzeitig versucht, ein paar tatsächlich nützliche und genaue Informationen zu übermitteln.“)

Wir empfehlen Webentwicklern, UA-Sniffing so weit wie möglich zu vermeiden. Moderne Webplattform-Funktionen sind fast alle auf einfache Weise erkennbar. Zum Beispiel dieModernizrDie Bibliothek ist eine fantastische und einfache Möglichkeit zum Erkennen von Features.

Im letzten Jahr haben wir einige UA-Sniffing-Sites gesehen, die aktualisiert wurden, um Microsoft Edge zu erkennen … nur um ihm einen veralteten IE11-Codepfad bereitzustellen. Dies ist nicht der beste Ansatz, da Microsoft Edge dem Verhalten von „WebKit“ entspricht, nicht dem von IE11 (alle Unterschiede zwischen Edge und WebKit sind Fehler, die wir beheben möchten).

Unserer Erfahrung nach läuft Microsoft Edge auf diesen Websites am besten auf den „WebKit“-Codepfaden. Da das Internet auf einer größeren Vielfalt von Geräten verfügbar wird, gehen Sie bitte davon aus, dass unbekannte Browser gut funktionieren. Beschränken Sie Ihre Website bitte nicht darauf, nur auf einer kleinen Anzahl aktuell bekannter Browser zu funktionieren. Wenn Sie dies tun, wird Ihre Website in Zukunft mit ziemlicher Sicherheit nicht mehr funktionieren.

Abschluss

Durch die Darstellung der Chrome UA-Zeichenfolge können wir die von diesen Entwicklern verwendeten Hacks umgehen, um den Benutzern das optimale Erlebnis zu bieten.

Genommen vonWie lautet der User-Agent-String-Name für Microsoft Edge?Antwort vonDave Voyles.

verwandte Informationen