Selaimen nuuskiminen (tunnetaan myös nimellä selaimen nuuskiminen ) on joukko tekniikoita, joita käytetään verkkosivustoissa ja verkkosovelluksissa vierailijan käyttämän verkkoselaimen määrittämiseen ja vierailijalle selainta vastaavan sisällön tarjoamiseen. Sitä käytetään myös mobiiliselaimien tunnistamiseen ja mobiilioptimoitujen verkkosivustojen lähettämiseen niille. Tätä käytäntöä käytetään toisinaan sellaisten selainten välisten yhteensopimattomien kiertämiseen, jotka johtuvat HTML :n , CSS:n ( Cascading Style Sheets ) tai asiakirjaobjektimallin virheellisestä tulkinnasta . Vaikka World Wide Web Consortium ylläpitää suositusten muodossa ajan tasalla olevia keskusversioita joistakin tärkeimmistä verkkostandardeista, käytännössä yksikään ohjelmistokehittäjä ei ole kehittänyt selainta, joka olisi täysin näiden standardien mukainen; myös muiden standardien ja protokollien, kuten SVG ja XMLHttpRequest , toteutus eroaa. Tämän seurauksena eri selaimet näyttävät saman sivun eri tavoin, minkä vuoksi selaimen skannaus verkkoselaimen havaitsemiseksi on suunniteltu varmistamaan sisällön yhtenäinen näyttö.
Web-sivuilla voidaan käyttää ohjelmointikieliä, kuten JavaScriptiä , jotka käyttäjäagentti tulkitsee ja tulokset lähetetään verkkopalvelimelle . Esimerkiksi:
var isIEBrowser = false ; if ( ikkuna . ActiveXObject ) { isIEBrowser = tosi ; } // Tai lyhyempi: var isIE = ( ikkuna . ActiveXObject !== määrittelemätön );Tätä koodia ajaa asiakastietokone, ja tuloksia käytetään muuhun koodiin tarvittavien säätöjen tekemiseen asiakaspuolella. Tämä esimerkki pyytää asiakastietokonetta määrittämään, voiko selain käyttää ActiveX -ominaisuutta . Koska tämä ominaisuus on Microsoftin oma , positiivinen tulos tarkoittaa, että asiakas voi käyttää Microsoft Internet Exploreria . Tämä ei kuitenkaan ole enää luotettava indikaattori sen jälkeen, kun Microsoft julkaisi ActiveX-koodin avoimena lähdekoodina, mikä tarkoittaa, että sitä voidaan käyttää missä tahansa selaimessa.
Web-palvelin kommunikoi asiakkaan kanssa käyttämällä HTTP- tai Hypertext Transfer Protocol -protokollaa, joka osoittaa, että asiakas lähettää palvelimelle tietoja selaimesta, jota käytetään verkkosivuston katseluun User agent -merkkijonossa .
Laajat selainteknologiat mahdollistavat käyttäjien jatkuvan seurannan, vaikka he yrittäisivät pysyä nimettöminä. Katso Laitteen sormenjäljet saadaksesi lisätietoja selaimen sormenjäljestä, joka on suhteellisen uusi tekniikka käyttäjän selaimen tunnistamiseen.
Monet verkkosivustot käyttävät selainanalyysiä määrittääkseen, voiko vierailijan selain käyttää tiettyjä ominaisuuksia (kuten JavaScript , DHTML , ActiveX tai Cascading Style Sheets ) ja näyttää virhesivun, jos tietty selain ei toteuta näitä ominaisuuksia. On kuitenkin lähes mahdotonta ottaa huomioon käyttäjien saatavilla olevien selainten valtavaa valikoimaa. Tyypillisesti web-suunnittelija, joka käyttää selaimen haistelua määrittääkseen, mikä sivu tarjotaan, testaa kolmea tai neljää suosituinta selainta ja tarjoaa jokaiselle räätälöityä sisältöä. Jos käyttäjä käyttää vahvistamatonta käyttäjäagenttia , ei ole takeita siitä, että käyttökelpoinen sivu tarjotaan. näin ollen käyttäjä voidaan pakottaa joko vaihtamaan selainta tai välttämään tällaisia sivuja. World Wide Web Consortium , joka asettaa verkkosivujen suunnittelustandardit, suosittelee, että verkkosivustot suunnitellaan sen standardien mukaisesti ja mukautetaan "viimeistään epäonnistumaan", kun ne näytetään selaimessa, joka ei pysty käsittelemään tiettyä standardia.