完美解决spring websocket自动断开连接再创建引发的问题


Posted in Javascript onMarch 02, 2017

问题:由于 web session 超时时间为 30 分钟,如用户在 web session 规定时间内没有退出系统,但由于其它原因 用户却断开的 websocket 的连接,如果用户还要聊天或是其它 websocket 方面的操作,那么就只能重新连接...

看代码:

var socket; 
var $ = function() { 
 return document.getElementById(arguments[0]); 
} 
var log = function(msg) { 
 $("log").innerHTML ? $("log").innerHTML += "<br />" + msg : $("log").innerHTML = msg; 
} 
var initWebSocket = function() { 
 if (window.WebSocket) { 
  socket = new WebSocket("ws://127.0.0.1:8080/websocket"); 
  socket.onmessage = function(event) { 
   var json = JSON.parse(event.data); 
   document.getElementById("message").value = json.message; 
  }; 
  socket.onopen = function(event) { 
   log("Web Socket opened!"); 
  }; 
  socket.onclose = function(event) { 
   log("Web Socket closed."); 
  }; 
  socket.onerror = function(event) { 
   log("Web Socket error."); 
  }; 
 } else { 
  log("Your browser does not support Web Socket."); 
 } 
} 
var send = function() { 
 var data = function() { 
  socket.send("{'send':1,'take':2,'message':" + Math.random() + "}"); 
 }; 
 if (socket.readyState !== 1) { 
  socket.close(); 
  initWebSocket(); 
  setTimeout(function() { 
   data(); 
  }, 250); 
 } else { 
  data(); 
 }; 
 
} 
window.onload = function() { 
 initWebSocket(); 
}

以上这篇完美解决spring websocket自动断开连接再创建引发的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery中需要注意的细节问题小结
Dec 06 Javascript
jQuery中clone()方法用法实例
Jan 16 Javascript
基于zepto.js实现仿手机QQ空间的大图查看组件ImageView.js详解
Mar 05 Javascript
JSON字符串和对象之间的转换详解
May 26 Javascript
完美解决jQuery fancybox ie 无法显示关闭按钮的问题
Nov 29 Javascript
JS正则截取两个字符串之间及字符串前后内容的方法
Jan 06 Javascript
简单实现js倒计时功能
Feb 13 Javascript
bootstrap为水平排列的表单和内联表单设置可选的图标
Feb 15 Javascript
VUE搭建手机商城心得和遇到的坑
Feb 21 Javascript
vue路由 遍历生成复数router-link的例子
Oct 30 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
May 11 Javascript
详解vue中v-model和v-bind绑定数据的异同
Aug 10 Javascript
vue-dialog的弹出层组件
May 25 #Javascript
在node.js中怎么屏蔽掉favicon.ico的请求
Mar 01 #Javascript
基于Bootstrap的网页设计实例
Mar 01 #Javascript
JS中的作用域链
Mar 01 #Javascript
javascript html5轻松实现拖动功能
Mar 01 #Javascript
详解数组Array.sort()排序的方法
May 09 #Javascript
JavaScript中数组Array.sort()排序方法详解
Mar 01 #Javascript
You might like
深入PHP数据加密详解
2013/06/18 PHP
常见php数据文件缓存类汇总
2014/12/05 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
PHP消息队列实现及应用详解【队列处理订单系统和配送系统】
2019/05/20 PHP
nodejs中使用monk访问mongodb
2014/07/06 NodeJs
Jquery修改页面标题title其它JS失效的解决方法
2014/10/31 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
完全深入学习Bootstrap表单
2016/11/28 Javascript
浅谈Node.js:fs文件系统模块
2016/12/08 Javascript
vue中如何实现pdf文件预览的方法
2018/07/12 Javascript
vue 动态给每个页面添加title、关键词和描述的方法
2020/08/28 Javascript
解决vue scoped scss 无效的问题
2020/09/04 Javascript
python 算法 排序实现快速排序
2012/06/05 Python
Python连接mysql数据库的正确姿势
2016/02/03 Python
Python基于回溯法子集树模板解决0-1背包问题实例
2017/09/02 Python
Python中pygal绘制雷达图代码分享
2017/12/07 Python
Ubuntu下使用python读取doc和docx文档的内容方法
2018/05/08 Python
python使用turtle库与random库绘制雪花
2018/06/22 Python
python安装twisted的问题解析
2018/08/21 Python
python 保存float类型的小数的位数方法
2018/10/17 Python
Python实现微信机器人的方法
2019/09/06 Python
英国汽车零件购物网站:GSF Car Parts
2019/05/23 全球购物
Scotch Porter官方网站:男士美容产品
2020/08/31 全球购物
西班牙购买隐形眼镜、眼镜和太阳镜网站:Lentiamo.es
2020/06/11 全球购物
设计毕业生简历中的自我评价
2013/10/01 职场文书
人事主管的岗位职责
2013/11/16 职场文书
大学生怎样进行自我评价
2013/12/07 职场文书
护理专业优质毕业生自荐书
2014/01/31 职场文书
医院检讨书范文
2014/02/01 职场文书
高校教师岗位职责
2014/03/18 职场文书
乡镇三严三实学习心得体会
2014/10/13 职场文书
习总书记三严三实学习心得体会
2014/10/13 职场文书
2015年仓库工作总结
2015/04/09 职场文书
详解JS ES6编码规范
2021/05/07 Javascript
Pycharm远程调试和MySQL数据库授权问题
2022/03/18 MySQL