日常普通项目开发过程中,我们几乎很少用到WebSocket开发。但最近的项目有个功能需要服务器端实时的推送最新的信息同步到前端页面展示。所以思前想后,决定采用WebSocket再适合不过了。于是在实现的过程中刚开始各种百度WebSocket实现流程及样例。遗憾的是,搜索的结果永远都是千篇一律的一致。(甚至,可以肯定的是基本都是复制粘贴没有经过亲身实践过)虽然大的方向没错,但最终的结果就是一直各种错误,各种websocket连接失败。直至最后琢磨了半天,才确认结果。再次验证实际工作中细节决定成败啊。

该图片来源于websocket官网

既然准备用WebSocket,那就首先了解WebSocket的主要作用。WebSocket他是为了解决客户端发起多个http请求到服务器资源浏览器必须要经过长时间的轮训问题而生的,他实现了多路复用,他是全双工通信。在webSocket协议下客户端和浏览器可以同时发送信息。用大白话解释主要作用就是:

  1. 客户端特别频繁的和服务器进行数据交互的时候(比如按秒级别的请求)
  2. 服务器端定时向前端推送消息的时候

废话就说到这里,下面直接撸上这次实践过程中的干货及注意点:

框架用的是SpringBoot目前最新版本2.2的框架,首先pom文件依赖添加spring-boot-starter-websocket就行了,如图:

然后创建websocket配置文件,如图:

最后也是最重要的就是websocket服务端代码编写:划重点一定要注意两个注解(@Controller 和@ServerEndpoint),网上基本都是@Component注解,然后各种解析包冲突等问题。

完成上面三个主要步骤,springboot集成 WebSocket服务端的工作就完成了。后面就是前端websocket连接写法需要注意下:

websocket端口号就是后台服务端的端口号,这里的IP一定要写成对应的IP地址,不要用localhost或127.0.0.1地址。

全部写完后,后端直接写个定时任务调用发送消息的接口,前端就可以实时展示服务端推送的消息内容了。至此,所有注意点都已经说明了。有不明白或需要详细了解的小伙伴可关注并私聊我。难得抽出点额外时间来补充这次工作中用到websocket遇到的问题点,在此给自己做个笔记同时分享给需要了解的朋友们。还是那句话。期待大家一起学习一起进步。

See you next time!

websocket创建失败_SpringBoot2.2 实践WebSocket被不靠谱的百度搜索结果坑了多少人相关推荐

  1. websocket创建失败_ie11 websocket连接建立时报SecurityError问题

    这段代码在chrome和firefox下是没有问题的,但是换成ie11之后,在for循环那块,前6个次都成功了,但是从第7次到第10次全都失败了,new WebSocket返回异常SecurityEr ...

  2. websocket创建失败_WebSocket sendSocketMessage 发送失败,onSocketMessage接收不到数据

    详细问题描述 Socket链接 手机调试没有任何问题 onSocketOpen onSocketMessage 能发送 能接收数据 但是打包编译后 APP上面只能连接成功,发送接收代码不执行 失效 [ ...

  3. springboot 使用 Spring Boot WebSocket 创建聊天室 2-11

    什么是 WebSocket WebSocket 协议是基于 TCP 的一种网络协议,它实现了浏览器与服务器全双工(Full-duplex)通信-允许服务器主动发送信息给客户端. 以前,很多网站为了实现 ...

  4. WebSocket创建局域网在线聊天室

    WebSocket的简要介绍: WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议. WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服 ...

  5. android与web服务器建立连接失败,Android websocket连接失败

    我正在开发一个简单的应用程序,它只是应该连接到websocket服务器并发送简单的文本消息.我使用nv-websocket-client作为websocket的库.我似乎无法连接到服务器.我使用wir ...

  6. 【websocket前后端交互】vue-springboot实现websocket前后端交互链接,websocket心跳重连,包含前后端代码,复制即可用【详细解释版本】

    前言: 还是老规矩,一步步的教大家如何建立前后端的 websocket 链接,并能完成互相传送数据的简单功能.由于网上找了半天发现很多帖子都是东一句西一句的,要不就是写的没什么注释和解释,导致我这个前 ...

  7. uniapp APP 端 WebSocket 使用,实现一个简单 WebSocket 工具类

    背景 最近有需求要做一个简单业务的 APP 应用,简单考虑选用 uniapp + uview + vue2.x 方案,因为还有web端页面也需要用到 WebSocket ,简单封装了一个适应 web ...

  8. 【Web通信】WebSocket详解:WebSocket是什么?如何使用WebSocket?在Vue中封装WebSocket(心跳监测)。nginx配置websocket。

    一.WebSocket相关定义 1. WebSocket定义 WebSocket 是一种基于TCP的全双工通信协议,它提供了一种在浏览器和服务器之间建立持久连接来交换数据的方法.数据可以作为" ...

  9. nodejs本地启动websocket服务,前端调用本地websocket接口调试

    之前经常用nodejs启动http的本地服务调试接口,今天因为需要调试websocket所以使用nodejs启动了本地服务,分享一个本地使用nodejs启动websocket服务的方法! 启动本地的w ...

最新文章

  1. 获取AppStore上架后的应用版本号
  2. GitHub最最最火的开源爬虫工具箱,一爬就取
  3. 相关算子、卷积算子、边缘效应
  4. 票务系统思维导图_最全思维导图分享,告诉你如何系统的学好软件测试。
  5. DinamicX 详解:如何让盲人也能在线购物?
  6. 前端学习(2589):前端权限的设计思路
  7. 【转】[程序集清单定义与程序集引用不匹配]分析及解决
  8. 激光器安规详细解读 - 一级 - 并以940波长为例
  9. java c 传递字符串数组_JNI传递字符串数组J-StringArray
  10. axios http错误码处理
  11. 使用 virtualBox 安装 ubuntu
  12. 电脑右键菜单中没有“打开方式”怎么办
  13. leetcode - b 199场周赛(缺第四题)
  14. 电脑组装的配件及其功能
  15. 计算机网络实验思科实验报告,计算机网络思科综合性实验报告
  16. 大数据四大常识,你知道多少
  17. 好用免费的视频去水印工具软件,去水印微信小程序,操作简单,方便快捷,教你视频怎么水印
  18. 博弈论 根据规则推导 先手必胜
  19. 使用vueaxios请求的get方式实现留言评论的添加,删除功能
  20. python安装docxtpl库_python-Word模板填充-docxtpl

热门文章

  1. Excel技巧之——英文大小写转换(转)
  2. 防范SQL注入的几种方法 4
  3. Java Lambda表达式入门
  4. 腾讯云服务器配置JDK和Tomcat环境
  5. 【LetCode 算法修炼】Add Two Numbers
  6. 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC
  7. JQuery Easy Ui 可装载组合框 - ComboBox
  8. 《你的灯亮着么》五六篇
  9. 生活随笔:人的追求和差异
  10. redis超时问题分析