javaScript 檢測 是否可以串連指定伺服器,javascript伺服器
本文主要講述如何在js裡面從多個服務端servlet中找到可用的地址
一般項目部署到生產環境之後會有一個生產網段(就是你可以在家訪問)和一個辦公網段(只能在公司才能訪問)。
我們的項目部署好了之後,外部系統調用我們的servlet 這個時候就需要檢測聯哪一個地址,意思就是 需要在js裡面檢測到底要連哪個地址
具體js代碼如下:
function getXhr() {var httpreq = null;//由於涉及跨域問題,這裡優先使用ActiveXObjectif (window.ActiveXObject) {try {httpreq = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) {try {httpreq = new ActiveXObject("Microsoft.XMLHTTP");} catch (e) {}}} else if (window.XMLHttpRequest) {httpreq = new XMLHttpRequest();}return httpreq;}function checkIsConnect(url) {var xmlhttp = getXhr();xmlhttp.open("GET", url, false);try {xmlhttp.send(null);} catch (e) {return false;}if (xmlhttp.readyState == 4) {//readyStatud == 4 表示與服務端完成互動,即可以串連return true;}return false;}function test() {var urls = new Array("http://zhw:7001/CommonWeb/","http://127.4.0.1:7001/finance/","http://zhw:7031/CommonWeb/");var checkUrl = null;for (var i = 0; i < urls.length; i++) {if (checkIsConnect(urls[i] + "testServlet")) {checkUrl = urls[i];break;}}if (checkUrl != null) {//擷取到可用伺服器位址之後的邏輯處理} else {alert("IP檢測無可串連的網路服務,請檢查網路連接或確認服務端配置!服務端配置地址如下:" + urls);}}