IM(服务端+pc端+移动端)(QT+websocket+springboot+android)

**

更新时间:2022-10-19 (持续更新)

**

参考:
githubC库websocket
QT官方server代码示例
websocket客户端在线测试
QT websocket 服务器设置 wss 访问
websocket文件传输

WebSocket是一种在单个TCP连接上进行全双工通信的协议。WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。
WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在WebSocket API中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。

准备做个IM练练手,正好最近也在学习websocket。
实时通信(Instant Messaging,简称IM)是一个实时通信系统,允许两人或多人使用网络实时的传递文字消息、文件、语音与视频交流。

IM比较常见的就是QQ,微信了。其中涉及的知识点比较多,通信的服务器,后台认证的服务器,数据库存放个人数据,

知识点

初步估计用:QT+springboot+android app实现
用java的后台作为:登录认证–http请求的方式通过认证登录
websocket作为:通信过程–websocket–文字和文件传输
websocket和后台服务器放在云服务器运行

第一阶段:完成文本通信。完成
第二阶段:完成文件传输。完成
第三阶段:完成多用户-服务器转发通信。完成
第四阶段:完成服务器开发,并部署到云服务器。完成
第五阶段:获取后台账号信息,加载当前好友列表到当前窗口。
第五阶段:优化客户端界面。美化界面。完成

完成安卓版本。未完成
安卓由于不太熟悉,可能需要往后推迟,

一、QT服务器

服务器写好后,放置在云服务器上运行即可。

在这里插入图片描述

二、客户端

1.网页版客户端

通过自己写的前端代码或者是用网页版测试客户端都可以:
自己写的网页端:(消息包需要自己定义解析消息)
在这里插入图片描述

网页版测试客户端:
地址:https://www.qvdv.com/tools/qvdv-websocket.html

2.PC端客户端

pc客户端界面(新增了一个二维码登录)
后续在思考是否添加一个验证码,避免暴力破解。
同时可以考虑在后台添加限制登录验证次数接口,验证次数过多则锁时间。
在这里插入图片描述

3.移动客户端(安卓版)

暂未开发。

三、后台验证登录

springboot后台。
通过获取当前账号密码,通过http-post方式去后台数据库验证账号:
在这里插入图片描述
验证通过,登录成功。

登录成功后:就可以开始进行聊天
在这里插入图片描述

密码错误:则会提示错误
在这里插入图片描述
数据库:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值