Come rilevare la velocità di connessione con JavaScript
La velocità di connessione è la velocità di flusso dei dati tra due computer attraverso una rete, come Internet. La velocità di connessione è misurata in unità di bit al secondo (bps), ma di solito è espressa in kilobit (1024 bit) al secondo (kbps, tipico per le connessioni modem) o megabit (1024 kilobit) al secondo (Mbps, tipico per le connessioni a banda larga) . La creazione di una pagina Web con JavaScript per misurare e calcolare la velocità di connessione è un utile strumento di amministrazione per il monitoraggio della rete e della connessione Internet che puoi eseguire direttamente nel tuo browser web. Puoi anche utilizzarlo per rilevare la connessione del visitatore del tuo sito web per decidere se inviare la versione ad alta intensità di larghezza di banda o light dei tuoi contenuti.
Passaggio 1
Apri la tua pagina web a cui desideri aggiungere il JavaScript di rilevamento della velocità di connessione nel tuo editor di testo.
Passaggio 2
Aggiungi i tag di script iniziale e finale nell'area dell'intestazione della pagina Web (dopo l'inizio
ma prima della fine tag), ad esempio:Passaggio 3
Aggiungi il codice seguente tra i tag di script iniziale e finale, sostituendo "myimage.jpg" con il nome del file dell'immagine che desideri utilizzare per il test di velocità. La parte "?n=" + Math.random() dell'indirizzo creata e assegnata a imageAddr induce il browser Web a recuperare l'immagine ogni volta invece di utilizzare una versione memorizzata nella cache locale. Usa un'immagine con una dimensione del file di circa 200 kilobyte.
var imageAddr ="myimage.jpg" + "?n=" + Math.random();
Passaggio 4
Aggiungi il codice seguente nella riga successiva dello script per creare le variabili per memorizzare l'ora di inizio, l'ora di fine e la dimensione del download del test. Imposta "downloadSize" sulla dimensione del file immagine in byte.
var startTime, endTime GO var downloadSize =200000;
Passaggio 5
Aggiungere il codice seguente per configurare l'immagine che verrà scaricata per il test. "download" è impostato come oggetto Immagine. L'azione per catturare la fine del download viene assegnata per attivarsi al termine del download dell'immagine.
var download =nuova immagine();
download.onload =funzione() {
endTime =(nuova Data()).getTime();
showResults() VAI }
Passaggio 6
Aggiungi il codice seguente che esegue il test di velocità. L'ora corrente viene acquisita in startTime. L'indirizzo dell'immagine assegnato a download.src avvia il download dell'immagine.
startTime =(nuova data()).getTime(); download.src =imageAddr;
Passaggio 7
Aggiungi la seguente funzione allo script che calcola i risultati del test di velocità. Innanzitutto, calcola la durata, convertendo i millisecondi in secondi. Successivamente, converte la dimensione del download in bit, calcola la velocità di download e converte la velocità in kbps e Mbps. Infine, viene visualizzata una finestra di messaggio con i risultati.
funzione showResults() { var duration =Math.round((endTime - startTime) / 1000); var bitsLoaded =downloadSize * 8 GO var speedBps =Math.round(bitsLoaded / durata) GO var speedKbps =(speedBps / 1024).toFixed(2) GO var speedMbps =(speedKbps / 1024).toFixed(2) Avviso GO (" La tua velocità di connessione è:\n" + speedBps + " bps\n" + speedKbps + " kbps\n" + speedMbps + " Mbps\n") VAI }
Passaggio 8
Apri la pagina nel tuo browser e provala per assicurarti che lo script funzioni correttamente. Potrebbero essere necessari alcuni secondi prima che venga visualizzata la finestra di messaggio con i risultati del test.
Suggerimento
Il JavaScript misura la velocità tra il computer che visualizza la pagina web e il sito che ospita l'immagine utilizzata per il test. Se stai testando la connessione al tuo sito web, ospita l'immagine sul tuo sito web. Verifica la velocità di connessione generale fornendo l'indirizzo a un'immagine ospitata su un sito con ampia larghezza di banda e velocità come flickr o Amazon.