记录一下自己当初写websocket的时候遇到的问题
//下面这个是一个JS的方法,可以直接复制到HTML里面使用 心跳包也在里面
$(function () {
var webSocket = null;
var host = window.document.location.host;
//建立websocket连接的路径,对应后台的那个接口
var wsServer = "ws://" + host + "${ctxPath}";
var pathName = window.document.location.pathname;
var projectName = pathName.substring(0, pathName.substr(1).indexOf('/') + 1);
/*var wsServer = "ws://" + host + projectName;*/
console.log(wsServer);
/*function websock() {*/
//判断当前浏览器是否支持WebSocket
if('WebSocket' in window){
// 初始化一个 WebSocket 对象
/*ws = new WebSocket('ws://localhost:8081/a/wsocket');*/
/*webSocket = new WebSocket(wsServer + "/wsocket");*/
webSocket = new WebSocket(wsServer+"/websocke");
/*alert('asdasdasda')*/
}
else{
alert('Not support websocket')
}
webSocket.onerror = function(event) {
console.log("websockt连接发生错误,请刷新页面重试!")
reconnect();
};
// 建立 web socket 连接成功触发事件
webSocket.onopen = function() {
// 使用 send() 方法发送数据
webSocket.send('发送数据');
heartCheck.reset()
/* alert('数据发送中...');*/
};
// 接收服务端数据时触发事件
webSocket.onmessage = function(evt) {
heartCheck.reset() //拿到任何消息都说明当前连接是正常的
var received_msg = evt.data;
if (received_msg=="111"){
console.log("llws收到消息啦:" +evt.data);
return
}
if (received_msg=="hj"){
$.post("${ctx}/xwhj/userinfo/getidcard",{"zjh":received_msg},function (data) {
console.log(data);
$("#id").val(data);
refresh();
} )
}
else {
var jsxx = received_msg;
console.log(jsxx)
var js =JSO