Ultimi Commenti

  • Ciao Anakin, si puoi usar... Vedi...
    30.01.16 18:35
    di BatEn
  • Ciao, volevo chiedere se ... Vedi...
    16.01.16 15:51
    di Anakin
  • Trovo l'articolo interess... Vedi...
    27.08.15 10:08
    di Michele
  • Articolo davvero Completo... Vedi...
    17.04.14 00:19
    di Marco
  • Ciao, benvenuto tra noi. Vedi...
    21.06.13 14:26
    di BatEn

Top Five Commentatori

Donazione

Sostieni Mente Geniale effettuando una donazione per migliorare i contenuti del sito e premiare i nostri sforzi.

Importo: 

Powered by OSTraining.com

Login

Controllo URL Server Lato Client PDF Stampa E-mail
( 0 Votes )
Scritto da Enrico Battuello   
Martedì 09 Settembre 2014 23:44

Con questo breve articolo vedremo come utilizzare Javascript lato client ovvero lato browser utente per capire da quale server o dominio stiamo caricando una pagina web. In particolare lo script che mostreremo potrà essere utile per diversificare l'elaborazione javascript o gli effetti di stile applicati alla pagina web in funzione del server da cui essa viene caricata.

 

Supponiamo nel nostro esempio di avere due server, vale a dire:

  • un server di sviluppo in cui eseguiamo le nostre prove e testiamo il codice che compone le pagine web;
  • un server di produzione in cui riversiamo il codice testato e funzionante per renderlo disponibile e fruibile agli utenti;

Il server di sviluppo risponde all'indirizzo:

  • http://localhost/mentegeniale

mentre il server di produzione risponde all'indirizzo:

  • http://mentegeniale.altervista.org

Il codice necessario ad eseguire il nostro controllo è contenuto all'interno della seguente funzione Javascript:

<script type="text/javascript">
   function checkServer() {
      var svilCheck = 'localhost';
      var proCheck = 'altervista.org';
      var currentLocation = window.location.href;
      var currentServer = '';

      if (currentLocation.indexOf(proCheck) > - 1)
         currentServer = 'PRODUCTION';
      else if (currentLocation.indexOf(svilCheck) > - 1)
         currentServer = 'SVILUPPO';
      else currentServer = 'SCONOSCIUTO';
      return currentServer;
   }
</script>

La funzionalità chiave usata nel javascript appena visto è la window.location che recupera l'indirizzo (URL) della pagina web appena caricata. In realtà, window.location non è una funzione bensì un oggetto javascript dotato di diverse proprietà fra cui:

 

  • location.href che restituisce l'URL della pagina corrente;
  • location.hostname che restituisce il nome del dominio dell'host web;
  • location.pathname che restituisce il percorso ed il nome del file della pagina corrente;
  • location.protocol che restituisce il protocollo web utilizzato per il caricamento della pagina (vale a dire http:// o https://);
  • location.assign che carica un nuovo documento;

 

Per il nostro scopo abbiamo utilizzato la proprietà href dell'oggetto location.

Come ultima nota evidenziamo l'utilizzo in questo script della funzione indexOf che è associata a tutti gli oggetti di tipo stringa; indexOf restituisce la posizione all'interno di una stringa della prima occorrenza trovata di uno specifico valore.

Per concludere diamo il codice HTML di una semplicissima pagina web che si limita a visualizzare un alert (un messaggio di avviso) che mostra la stringa risultante dall'esecuzione del controllo dell'indirizzo del server da cui è stata caricata:

<!doctype html>
<html>
<head>
<title>Check URL Server</title>
<script type="text/javascript">
   function checkServer() {
      var svilCheck = 'localhost';
      var proCheck = 'altervista.org';
      var currentLocation = window.location.href;
      var currentServer = '';

      if (currentLocation.indexOf(proCheck) > - 1)
         currentServer = 'PRODUCTION';
      else if (currentLocation.indexOf(svilCheck) > - 1)
         currentServer = 'SVILUPPO';
      else currentServer = 'SCONOSCIUTO';
      return currentServer;
   }
</script>
</head>
<body>
<script>
   alert('Ambiente: ' + checkServer());
   document.write('Ambiente: ' + checkServer());
</script>
</body>
</html>

Per un esempio di funzionamento potete selezionare questo link.

 

Ultimo aggiornamento Martedì 09 Settembre 2014 23:48