基于(webSocket)搭建一个双人匹配聊天的在线网站

本文详细介绍了如何在SpringBoot项目中搭建WebSocket服务器,包括服务端的接口定义、生命周期回调函数(如onOpen、onMessage、onError和onClose),以及客户端使用WebSocket连接服务器的示例。还提到了一个基于Vue的在线聊天项目的GitHub链接,可供读者扩展。
摘要由CSDN通过智能技术生成

webSocket服务器搭建

=================================================================================

  • 引入websocket服务后。我们需要创建一个类,并添加注解指定服务对外开放姐服务地址;

在这里插入图片描述

其中地址内有{}包裹是可以通过地址来接受的参数,上图可以接受用户名及性别。

webSocket生命周期对应的函数回调


服务端:


  1. 有客户端连接时:onOpen,在函数上添加该注解,当客户端连接时则会立即执行该函数。发生对应其他状态时也会执行特定函数

连接的回调函数可以接受当前连接的会话, 可以通过session发送消息,客户端连接有不同的会话,通过会话session可以发送消息,断开连接等操作

  1. 收到客户端发送的消息时:onMessage

可以接受收到的字符消息

  1. 出现异常情况时:onError

  2. 连接断开时:onClose

搭建使用:

在这里插入图片描述

启动springboot项目,就启动了webSocket服务。

客户端:


客户端使用webSocket连接服务器时,使用js的WebSocket对象创建连接

前端wensocket连接websocket服务代码

this.ws = new WebSocket(ws://localhost:3000/chat/${this.from.fromName}/${this.from.fromSex})

ws: w:web s:Socket 使用webSocket协议进行连接。

后面则是连接的地址。可以在地址放一些参数。后台同样配置可以接收

创建成功后会返回一个webSocket对象,该对象需要给不同的生命周期设置一个回调。

生命周期痛服务端一样。

  1. 连接上服务端时:onOpen,在函数上添加该注解,当客户端连接时则会立即执行该函数。发生对应其他状态时也会执行特定函数

连接的回调函数可以接受当前连接的会话, 可以通过session发送消息,客户端连接有不同的会话,通过会话session可以发送消息,断开连接等操作

  1. 收到客户端发送的消息时:onmessage

可以接受收到的字符消息

  1. 出现异常情况时:onerror

  2. 连接断开时:onclose

如图,这个最简单的webSocket连接时的客户端并指定回调

在这里插入图片描述

以上为webSocket的基本使用。

在线聊天网站的代码已上传至git,由于服务器资源有限。功能只有双人匹配聊天。各位可以根据需要进行扩展

gitee地址

==========================================================================

(前端)在线聊天-Vue。Gitee地址

(后端)在线聊天gitee地址

clone->打包->部署 私人聊天室不是梦😄😄

文末

我一直觉得技术面试不是考试,考前背背题,发给你一张考卷,答完交卷等通知。

首先,技术面试是一个 认识自己 的过程,知道自己和外面世界的差距。

更重要的是,技术面试是一个双向了解的过程,要让对方发现你的闪光点,同时也要 试图去找到对方的闪光点,因为他以后可能就是你的同事或者领导,所以,面试官问你有什么问题的时候,不要说没有了,要去试图了解他的工作内容、了解这个团队的氛围。

前端面试题汇总

JavaScript

开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】

性能

linux

前端资料汇总

  • 8
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值