在两个IP上使用Websocket的TryCatch不在javascript中处理
我有一个websocket监听一些接口,这样客户端就可以调用多个ip。我没有这些IP的dns。即使在try块中也会失败在两个IP上使用Websocket的TryCatch不在javascript中处理,javascript,Javascript,我有一个websocket监听一些接口,这样客户端就可以调用多个ip。我没有这些IP的dns。即使在try块中也会失败 window.onload = function() { ws = ""; try { ws_connection = "ws://" + lblInfoIP.value + ":9080/websockets"; ws = new
window.onload = function() {
ws = "";
try {
ws_connection = "ws://" + lblInfoIP.value + ":9080/websockets";
ws = new WebSocket(ws_connection);
}
catch(err) {
ws_connection = "ws://127.0.01:9080/websockets";
ws = new WebSocket(ws_connection);
}
ws.onmessage = function(msg) { showInfo(msg.data); };
ws.onerror = function(evt){ alert ('Websocket failed with ' + evt.data) };
}
手动使用与被调用url相同的ip工作
我该如何正确处理这个问题
有没有像ws_connection=“ws://”这样的东西被称为“\u url+”/websockets” 使用简单的“或”(
| |
)操作,而不是try/catch构造:
window.onload=函数(){
设ws=newwebsocket(`ws://${lblInfoIP.value | | |“127.0.01:9080”}/websockets`)
ws.onmessage=函数(msg){showInfo(msg.data);};
ws.onerror=函数(evt){alert('Websocket因'+evt.data'而失败)};
}
在开发中,将lblInfoIP.value
设置为null
或“undefined
”。
或者使用“
document.location.host
:9080”你说的“called\u url”是什么意思?!感谢您让connection=“ws://”+document.location.host+“/websockets”;设ws=新的WebSocket(连接);起作用了吗