hello,各位小伙伴们大家好,这里是X,最近有人私信我,让我玩玩Websocket消息推送的功能,这个功能实现呢不算太复杂,和后端实现这个功能几乎一摸一样??????如果玩过websocket的朋友这篇博文里的内容对你来说基本无难度????如果没玩过的话那就要认真看下去啦????这也是我之前项目的一个小功能,刚好来分享一下??
注意:这是一个完整的前后端+小程序的demo,项目比较大,所以要分为2-3篇博客来完成,今天是项目搭建和websocket认识以及项目一些小注意点吧,从0开始的后台系统项目,国庆这几天会出完整代码教程,欢迎点赞、评论和收藏????
文章目录
- Websocket ??
- 后端准备??
- 前端项目准备??
- 下一期更精彩????
Websocket ??
了解一波websocket吧~
WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。
WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
太牛逼了,每次使用websocket都有这种感觉??????
玩消息最明显的特点就是:消息,它是有不同的类型的
与HTTP不同的是,Websocket需要先创建连接,这就使得其成为一种有状态的协议,之后通信时可以省略部分状态信息。而HTTP请求可能需要在每个请求都携带状态信息(如身份认证等)。
后端准备??
创建一个spring boot项目,这里直接演示了,可以参考我的,也可以自行根据自己的项目来,注意一定要加入websocket的依赖,下面是我添加的依赖,大家可以参考哈??
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-websocket com.alibaba fastjson 1.2.72 com.baomidou mybatis-plus-boot-starter 3.4.2 com.baomidou mybatis-plus-extension 3.5.2 com.baomidou mybatis-plus-generator 3.4.1 org.apache.velocity velocity-engine-core 2.2 com.github.pagehelper pagehelper-spring-boot-starter 1.4.5 org.springframework.boot spring-boot-devtools runtime true mysql mysql-connector-java runtime com.alibaba druid-spring-boot-starter 1.2.11 org.springframework.boot spring-boot-configuration-processor true org.projectlombok lombok true org.springframework.boot spring-boot-starter-test test org.junit.vintage junit-vintage-engine junit junit test
前端项目准备??
太简单啦,直接上截图了噢??可以用你们自己喜欢的方式创建项目,我个人如果说是要用vite工具的话更喜欢这个方式??
最后进入项目目录:npm i即可,我也是今天才发现它的端口号变成了5173????
下一期更精彩????
好啦,今天的项目搭建就先到这里啦,小程序的搭建就不用我说了吧小程序我使用的是js,明天进入开发,下期见???