Get ip address from server

by Lars Holm Jensen

JavaScript

ping("larsholm.net", function(m){ console.log("It took "+m+" milliseconds."); })


function ping(host, pong) {

  var started = new Date().getTime();

  var http = new XMLHttpRequest();

  http.open("GET", "https://dns.google/resolve?name=" + host, /*async*/true);
  http.onreadystatechange = function() {
    if (http.readyState == 4) {
      var ended = new Date().getTime();

      var milliseconds = ended - started;
      
      var startIdx = http.responseText.indexOf("data");
      
      console.log(startIdx);
      
      console.log(http.responseText.substring(startIdx+8,startIdx+23));

      if (pong != null) {
        pong(milliseconds);
      }
    }
  };
  try {
    http.send(null);
  } catch(exception) {
    // this is expected
  }

}