js中websocket有时会出现onopen接收不到返回值
var socket;
var time = null;
if (window.WebSocket) {
socket = new WebSocket("ws://localhost:8001/ws");
//收到消息
socket.onmessage = function (event) {
let ta = document.getElementById("responseText");
ta.value = ta.value + "\n" + event.data;
}
//连接打开
socket.onopen = function (event) {
console.info("连接开启");
let ta = document.getElementById("responseText");
ta.value = "连接开启";
time = setTimeout(function(){
window.location.reload();
},1000);
}
//连接断开
socket.onclose = function (event) {
console.info("连接关闭");
let ta = document.getElementById("responseText");
ta.value = ta.value + "\n" + "连接关闭";
}
} else {
alert("浏览器不支持WebSocket");
}
function send(message) {
if (!window.WebSocket) {
return;
}
if (socket.readyState == WebSocket.OPEN) {
socket.send(message);
} else {
alert("连接尚未开启");
}
}
后端是使用的netty+websocket写的,前端是普通js,偶尔会出现连接不上的问题但是也没有具体的报错信息