Maison > interface Web > js tutoriel > le corps du texte

JavaScript détecte si le code de fonction du serveur de réseau public est accessible

陈政宽~
Libérer: 2017-06-28 14:33:07
original
1650 Les gens l'ont consulté

Vérifiez si l'AC est libéré avec succès et si le serveur Alibaba Cloud du réseau public est accessible. Permettez-moi de partager avec vous le code de la fonction JS pour détecter si le serveur du réseau public est accessible. Les amis qui en ont besoin peuvent s'y référer

utilisé dans le processus de développement de l'authentification wifi. 🎜>

Remarque : vérifiez si l'AC est libéré avec succès et si le serveur Alibaba Cloud du réseau public est accessible

Appel de fonction :

checkNet().then(function(res) {
  if(res) {
    //连网成功    
  }
  } else {
    //连网失败        
  }
})
Copier après la connexion
.


Code de fonction :


(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();
  }
})();
Copier après la connexion


Ce qui précède est le test JS introduit par l'éditeur pour voyez si le serveur du réseau public est accessible. J'espère que cela sera utile à tout le monde. Si vous avez des questions, veuillez me laisser un message et je vous répondrai à temps. Je tiens également à vous remercier tous pour votre soutien au site Script House !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal