今天调试一下webSocket,重前端到后台,但是出现了一个错误:
WebSocket Error: Incorrect HTTP response. Status code 404, Not Found,
这里我初始化代码如下,运行的时候,出现上面那个错误,我查看了一下,主要是ws = new WebSocket(target); 这里连不通服务器的代码,但是这个地址又是对的,搞了很久,才知道 webSocket也需要对应的tomcat版本,之前是apache-tomcat-7.0.54,修改之后是apache-tomcat-7.0.68,虽然提升的不是很多,但是就是版本问题。
function receiveMsgByWebsocket(){
var target = "ws://" + socketPath+ "/websocket/";
if ('WebSocket' in window) {
ws = new WebSocket(target);
} else if ('MozWebSocket' in window) {
ws = new MozWebSocket(target);
} else {
alert('WebSocket is not supported by this browser.');
return;
}
ws.onmessage = function(evt) {
//alert(evt.data);
console.log(evt);
//$("#xiaoxi").val(evt.data);
var msgData = evt.data;
var data = jQuery.parseJSON(msgData);
getNoReadMessageData();
toastr.info(data.theme+":"+data.context.substr(0,20)+".....","提醒",{
"positionClass": "toast-bottom-right"
});
};
ws.onclose = function(evt) {
//alert("close");
console.log("close");
};
ws.onopen = function(evt) {
//alert("open");
console.log("open");
};
}