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.