Come prendere informazioni dal browser di chi sta visitando il nostro sito

Non si tratta di un’azione da hacker, ma di un oggetto Javascript che serve per sapere cosa utilizzano gli utenti per visitare il nostro sito web

L’idea parte da un’esigenza personale di avvisare tutti gli utilizzatori di Internet Explorer (detto da ora in poi IE) della non compatibilità con un particolare sito perché, il più delle volte, quando si lavora ad un CSS particolare questo funziona bene su tutti i browser tranne che sullo stesso IE.

Perché? Chiedetelo a Microsoft!

Il problema non riguarda solo IE, perché se il problema fosse solo quello allora il discorso sarebbe già un pochino diverso. In problema è che ogni singola versione di IE visualizza un CSS in maniera differente, e ciò ci costringe a modificare un CSS per ogni singola versione di IE.

Quante volte ho ripetuto IE? Tante! Ma sicuramente meno volte di quanto ho dovuto testare lo stesso CSS su ognuna delle sue versioni.

A questo punto non dobbiamo fare altro che scegliere una tra le tre seguenti strade

  1. Scrivere un apposito CSS per ogni browser
  2. Lavorare ad un unico CSS ed escludere a prescidere le visite di chi utilizza IE
  3. Se non si vuole essere drastici, agli utenti che usano IE basta visualizzare un messaggio che consiglia l’uso di un altro browser

Io, sinceramente, preferisco la numero 3, ma tutte le scelte hanno una cosa in comune: il dover riconoscere il browser che l’utente sta utilizzando in quel momento.

Per fare questo si può usare l’oggetto navigator, di Javascript, che contiene tutte le informazioni del browser del visitatore, compreso lo userAgent.

L’oggetto navigator contiene le seguenti proprietà

  • appCodeName: Determina il code name del browser
  • appName: Determina il nome del browser
  • appVersion: Determina la versione del browser
  • cookieEnabled: Determina se il browser ha i cookie abilitati
  • geolocation: Ritorna l’oggetto della posizione geografica dell’utente
  • language: Ritorna la lingua
  • platform: Determina la piattaforma per la quale il browser è stato compilato
  • product: Determina il nome del motore del browser
  • userAgent: Ritorna lo user-agent del browser

Per un’applicazione pratica è possibile creare una pagina PHP sul nostro host inserendo questo codice

<script>
var txt = "";
txt += "<b>Browser CodeName:</b> " + navigator.appCodeName + "<br/>";
txt += "<b>Browser Name:</b> " + navigator.appName + "<br/>";
txt += "<b>Browser Version:</b> " + navigator.appVersion + "<br/>";
txt += "<b>Cookies Enabled:</b> " + navigator.cookieEnabled + "<br/>";
txt += "<b>Browser Language:</b> " + navigator.language + "<br/>";
txt += "<b>Platform:</b> " + navigator.platform + "<br/>";
txt += "<b>User-agent header:</b> " + navigator.userAgent + "<br/>";

document.write(txt);
</script>

E accedere dai vari browser che avete installato sul vostro computer, per leggerne tutte le informazioni e metterle quindi a confronto.

Per poter riconoscere se, per esempio, l’utente in quel momento non sta utilizzando Firefox, e volete stampargli un messaggio di avviso, basta usare questo codice

<script>
if (navigator.userAgent.indexOf("Firefox") == -1) {
 document.write("Browser non autorizzato");
}
</script>

Controlliamo ciclicamente il funzionamento dei link nei nostri articoli. Se noti dei link che non funzionano segnalacelo tra i commenti. Se hai apprezzato l'articolo considera l'idea di sostenere il blog anche con una piccola donazione. Grazie. Patreon / Ko-fi / Liberapay / Paypal

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *