Ciąg agenta użytkownika Microsoft Edge

11

Właśnie zauważyłem, że podczas gdy wszystkie inne przeglądarki wydają się mieć własne ciągi agenta użytkownika, Microsoft Edge wygląda tak:

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

Dlaczego ma Mozillę, Chrome i Safari, a nie tylko Edge?

PulseJet
źródło

Odpowiedzi:

4

Dlaczego więc ma Mozillę, Chrome i Safari, a nie tylko Edge?

Projektanci stron internetowych są po prostu leniwi i próbują zablokować użytkownikom możliwość korzystania z określonych przeglądarek, ponieważ chcą korzystać z łatwiejszej struktury obsługiwanej tylko przez niektóre przeglądarki.

Jest to również celowa decyzja projektowa mająca na celu ograniczenie przydatności kontroli klienta użytkownika. Ta decyzja prawdopodobnie oparta na fakcie (z perspektywy Spartan / Edge Developers) polega na tym, że w przeszłości strony internetowe szukały konkretnie IE i powiadamiały użytkowników o używaniu innej przeglądarki.

Ponieważ Edge / Spartan była pierwszą próbą Microsoft zmodernizowania silnika Trident, a celem Edge / Spartan było dopasowanie zestawu funkcji (Blink, AppleWebKit i Gecko) w tym czasie, agent użytkownika po prostu reklamuje się jako wszystko jest jednym sposobem aby uniemożliwić projektantom stron internetowych łatwe kierowanie na Edge'a w taki sam sposób, w jaki celowali w IE.

Wiele witryn, które odwiedzasz dzisiaj, nie wyświetla się dobrze w IE, ponieważ nie są one odpowiednio zakodowane i zwykle wyświetlają stronę tak, jak w starej przeglądarce, mimo że Internet Explorer 11 obsługuje wiele nowych standardów sieciowych. Niektóre strony będą wyświetlane niepoprawnie w IE, podczas gdy działają doskonale w innych przeglądarkach, takich jak Chrome lub Firefox.

Istnieje również problem z gwałtownym przewijaniem, które nie znika w niektórych witrynach nawet po wyłączeniu płynnego przewijania, a są przypadki, w których ważne elementy nie zostaną wyświetlone, ponieważ strona internetowa identyfikuje przeglądarkę jako IE.

Nowy silnik Spartan Microsoftu maskuje się jako Chrome

Chrome i Firefox również działają podobnie:

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

Warto zauważyć, że klient użytkownika IE11 jest podobny:

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

Zmiany ciągów klienta użytkownika

Ramhound
źródło
2

Edge udawał Chrome, a Chrome udawał Safari, a Safari udawał Mozillę. Edge użył EdgeHTML, ale nie ujawnił tego, a Chrome użył Blink, ale nie ujawnił tego, ale Chrome udawał, że używa WebKit. A Webkit udawał KHTML, a KHTML udawał Gecko. A zamieszanie obfitowało nadmiernie na powierzchni sieci.

Zaczerpnięte z Jaka jest nazwa ciągu User Agent dla Microsoft Edge? komentarz Claude

Ciąg Microsoft Edge UA:

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

Szczegółowo wyjaśniam, dlaczego w tym poście na blogu.

Neowin niedawno poinformował, że nowa przeglądarka Microsoftu dla systemu Windows 10, Spartan, używa ciągu Chrome UA „Mozilla / 5.0 (Windows NT 10.0; WOW64) AppleWebKit / 537.36 (KHTML, jak Gecko) Chrome / 39.0.2171.71 Safari / 537.36 Edge / 12.0 ″. Odbywa się to celowo.

Zauważysz również, że cały ciąg znaków kończy się na „Edge / 12.0 ″, czego nie robi Chrome.

Powinienem zauważyć, że nie jest to ponowne odejście od tego, co Microsoft zrobił z IE 11, który w systemie Windows 8 brzmi: Mozilla / 5.0 (Windows NT 6.3; Trident / 7.0; rv: 11.0) jak Gecko, jak wyjaśniono w tym Poczta.

Co to jest wąchanie agenta użytkownika?

Często programiści stron internetowych będą wąchać UA w celu wykrycia przeglądarki. Mozilla dobrze to wyjaśnia na swoim blogu:

Udostępnianie różnych stron lub usług w różnych przeglądarkach jest zwykle złym pomysłem. Sieć ma być dostępna dla wszystkich, niezależnie od używanej przeglądarki lub urządzenia. Istnieją sposoby na rozwój witryny internetowej w celu stopniowego ulepszania się w oparciu o dostępność funkcji zamiast kierowania na określone przeglądarki.

Oto świetny artykuł wyjaśniający historię User Agent.

Często leniwi programiści po prostu wąchają ciąg znaków UA i wyłączają zawartość na swojej stronie internetowej, w oparciu o przeglądarkę, którą według nich używa. Internet Explorer 8 jest częstym powodem frustracji dla programistów, dlatego często sprawdzają, czy użytkownik używa DOWOLNEJ wersji IE, i wyłączają funkcje.

Zespół Edge szczegółowo to opisuje na swoim blogu.

Wszystkie ciągi agentów użytkownika zawierają więcej informacji o innych przeglądarkach niż przeglądarka, której używasz - nie tylko tokeny, ale także „znaczące” numery wersji.

Ciąg UA przeglądarki Internet Explorer 11:

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

Ciąg Microsoft Edge UA:

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

Właściwość userAgent została trafnie opisana przez Patrick H. Lauke jako „stale rosnąca paczka kłamstw” w dyskusjach W3C. („A raczej wyważenie polegające na dodaniu wystarczającej liczby starszych słów kluczowych, które nie spowodują natychmiastowego upadku starego kodu węszącego UA, przy jednoczesnym staraniu się przekazać trochę naprawdę przydatnych i dokładnych informacji”).

Zalecamy, aby twórcy stron internetowych unikali w jak największym stopniu wąchania UA; nowoczesne funkcje platformy internetowej są prawie wszystkie wykrywalne w łatwy sposób. Na przykład biblioteka Modernizr to fantastyczny i prosty sposób wykrywania funkcji.

W ciągu ostatniego roku widzieliśmy kilka stron węszących UA, które zostały zaktualizowane w celu wykrycia Microsoft Edge… tylko po to, aby zapewnić mu starszą ścieżkę kodu IE11. To nie jest najlepsze podejście, ponieważ Microsoft Edge pasuje do zachowań „WebKit”, a nie do IE11 (wszelkie różnice Edge-WebKit to błędy, które chcemy naprawić).

Z naszego doświadczenia wynika, że ​​Microsoft Edge działa najlepiej na ścieżkach kodu „WebKit” w tych witrynach. Ponadto, ponieważ Internet staje się dostępny na wielu różnych urządzeniach, należy założyć, że nieznane przeglądarki są dobre - nie ograniczaj swojej witryny do działania tylko na niewielkim zestawie obecnie znanych przeglądarek. Jeśli to zrobisz, Twoja witryna prawie na pewno się zepsuje w przyszłości.

Wniosek

Prezentując ciąg znaków Chrome UA, możemy obejść hacki, których używają programiści, aby zapewnić użytkownikom jak najlepsze wrażenia.

Zaczerpnięte z Jaka jest nazwa ciągu User Agent dla Microsoft Edge? odpowiedź Dave'a Voylesa .

Klątwa
źródło
Argh ... Nie przyszło mi do głowy, żeby to przeszukiwać przy przepływie stosów. W każdym razie dzięki!
PulseJet,