Webbläsare sniffar

Webbläsarsniffning (även känd som webbläsardetektering ) är en uppsättning tekniker som används i webbplatser och webbapplikationer för att avgöra vilken webbläsare en besökare använder och för att tillhandahålla webbläsaranpassat innehåll till besökaren. Det används också för att upptäcka mobila webbläsare och skicka dem mobiloptimerade webbplatser. Denna praxis används ibland för att kringgå inkompatibiliteter mellan webbläsare på grund av feltolkning av HTML , Cascading Style Sheets (CSS) eller Document Object Model (DOM). Medan World Wide Web Consortium upprätthåller uppdaterade centrala versioner av några av de viktigaste webbstandarderna i form av rekommendationer, har i praktiken ingen mjukvaruutvecklare designat en webbläsare som exakt följer dessa standarder; implementering av andra standarder och protokoll, såsom SVG och XMLHttpRequest , varierar också. Som ett resultat visar olika webbläsare samma sida på olika sätt, och därför utvecklades webbläsarsniffning för att upptäcka webbläsaren för att säkerställa konsekvent visning av innehåll.

Sniffermetoder

Snuffande på klientsidan

Webbsidor kan använda programmeringsspråk som JavaScript som tolkas av användaragenten , med resultat som skickas till webbservern . Till exempel:

   
  
      



      var  isIEBrowser  =  false  ;  if  (  fönster  .  ActiveXObject  )  {  isIEBrowser  =  true  ;  }  // Eller, kortare:  var  isIE  =  (  fönster  .  ActiveXObject  !==  odefinierat  ); 

Denna kod körs av klientdatorn och resultaten används av annan kod för att göra nödvändiga justeringar på klientsidan. I det här exemplet uppmanas klientdatorn att avgöra om webbläsaren kan använda en funktion som heter ActiveX . Eftersom denna funktion tillhörde Microsoft, kommer ett positivt resultat att indikera att klienten kan köra Microsofts Internet Explorer . Detta är inte längre en tillförlitlig indikator sedan Microsofts frisläppande av ActiveX-koden med öppen källkod, vilket betyder att den kan användas av alla webbläsare.

Standardmetod för webbläsardetektering

Webbservern kommunicerar med klienten med hjälp av ett kommunikationsprotokoll som kallas HTTP , eller Hypertext Transfer Protocol, som anger att klienten skickar serverinformation om webbläsaren som används för att visa webbplatsen i en användaragentsträng .

Snuffande på serversidan

Omfattande webbläsartekniker möjliggör ihållande användarspårning även när användare försöker vara anonyma. Se enhetens fingeravtryck för mer information om webbläsarfingeravtryck, en relativt ny, omfattande webbläsares teknik för att sniffa på steroider.

Frågor och standarder

Många webbplatser använder webbläsarsniffning för att avgöra om en besökares webbläsare inte kan använda vissa funktioner (som JavaScript , DHTML , ActiveX eller cascading style sheets ), och visar en felsida om en viss webbläsare inte används. Det är dock praktiskt taget omöjligt att redogöra för det enorma utbudet av webbläsare som är tillgängliga för användarna. I allmänhet kommer en webbdesigner som använder webbläsarsniffning för att avgöra vilken typ av sida som ska presenteras att testa för de tre eller fyra mest populära webbläsarna och tillhandahålla innehåll som är skräddarsytt för var och en av dessa. Om en användare använder en användaragent som inte testats för, finns det ingen garanti för att en användbar sida kommer att visas; sålunda kan användaren tvingas antingen byta webbläsare eller undvika sidan. World Wide Web Consortium , som sätter standarder för konstruktion av webbsidor, rekommenderar att webbplatser utformas i enlighet med dess standarder, och arrangeras för att " misslyckas graciöst " när de presenteras för en webbläsare som inte kan hantera en viss standard.

Se även