AC가 성공적으로 해제되었는지, 공용 네트워크 Alibaba Cloud 서버에 액세스할 수 있는지 확인하세요. 공용 네트워크 서버 접속 가능 여부를 감지하는 JS 함수 코드를 공유해드리겠습니다.
WiFi 인증 개발 과정은 다음과 같습니다.
참고 : AC가 성공적으로 해제되었는지, 공용 네트워크 서버에 액세스할 수 있는지 확인합니다. Alibaba Cloud Server
함수 호출:
checkNet().then(function(res) { if(res) { //连网成功 } } else { //连网失败 } })
함수 코드:
(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(); } })();
위는 편집기에서 도입한 JS 테스트입니다. 공용 네트워크 서버에 접속할 수 있습니다. 모든 분들께 도움이 되기를 바랍니다. 궁금한 점이 있으면 메시지를 남겨주시면 시간 내에 답변해 드리겠습니다.
위 내용은 JS는 공용 네트워크 서버 기능 코드에 액세스할 수 있는지 감지합니다_javascript 기술의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!