Heim  >  Artikel  >  Web-Frontend  >  JS erkennt, ob auf den Funktionscode des öffentlichen Netzwerkservers zugegriffen werden kann_Javascript-Kenntnisse

JS erkennt, ob auf den Funktionscode des öffentlichen Netzwerkservers zugegriffen werden kann_Javascript-Kenntnisse

微波
微波Original
2017-06-28 13:22:291119Durchsuche

Überprüfen Sie, ob der AC erfolgreich freigegeben wurde und ob auf den Alibaba Cloud-Server des öffentlichen Netzwerks zugegriffen werden kann. Lassen Sie mich den JS-Funktionscode zum Erkennen, ob auf den öffentlichen Netzwerkserver zugegriffen werden kann, mitteilen.

Der Quellcode lautet wie folgt:

Hinweis: Überprüfen Sie, ob der AC erfolgreich freigegeben wurde und ob auf den Alibaba Cloud-Server im öffentlichen Netzwerk zugegriffen werden kann

Funktionsaufruf:

checkNet().then(function(res) {
  if(res) {
    //连网成功    
  }
  } else {
    //连网失败        
  }
})

Funktionscode:

(function() {
  //检测入口
  checkNet = function() {
    var def = $.Deferred();
    xiuNet(null).then(function(res) {
      netWork(null).then(function(res) {
        if(res) {
          def.resolve(true);
        } else {
          def.resolve(false);
        }
      })
    })
    return def.promise();
  }
  //嗅探网络,解决ios弹框接入网络问题
  var checkTime = 2; //嗅探次数
  xiuNet = function(def) {
    if(def == null) {def = $.Deferred();}
    var iframe = document.createElement("iframe");
    iframe.style.cssText = "display:none;width:0px;height:0px;";
    document.body.appendChild(iframe);
    var ua = navigator.userAgent;
    if(ua.indexOf("iPhone") != -1 || ua.indexOf("iPod") != -1 ||
      ua.indexOf("iPad") != -1) {
      iframe.src = "http://www.baidu.com" + "?timestap=" + new Date().getTime();
      console.info("嗅探网络----");
      if(checkTime > 1) {
        checkTime--;
        setTimeout(function() {
          xiuNet(def)
        }, 1000);
      } else {
        def.resolve(true);
      }
    } else {
      def.resolve(false);
    }
    return def.promise();
  }
  //检测网络,是否可以连接公网
  var cnetTime = 3; //检测网络次数
  netWork = function(def) {
    if(def == null) {def = $.Deferred();}
    $.ajax({
      type: "get",
      timeout: 2000,
      dataType: "jsonp",
      jsonp: "callback",
      url: 'https://jktv.tv/shphone/ver.txt',
      success: function(data) {},
      error: function(xhr) {
        $("#ddd").html("status:"+xhr.status)
        if(xhr.readyState == 4 && xhr.status == 200) {
          def.resolve(true);
        } else {
          if(cnetTime > 1) {
            cnetTime--;
            setTimeout(function() {
              netWork(def)
            }, 200);
          } else {
            def.resolve(false);
          }
        }
      }
    });
    return def.promise();
  }
})();

Wie oben erwähnt, ist dies der JS-Test, den der Herausgeber Ihnen vorstellt. Wenn Sie Fragen haben, hinterlassen Sie mir und dem Herausgeber bitte eine Nachricht Ich werde Ihnen rechtzeitig antworten.

Das obige ist der detaillierte Inhalt vonJS erkennt, ob auf den Funktionscode des öffentlichen Netzwerkservers zugegriffen werden kann_Javascript-Kenntnisse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn