本科毕业设计
本课题使用WebSocket和SignalR来实现一个简单的跨平台实时通讯应用。该应用允许用户在Web浏览器或Android App上进行实时聊天,支持私聊,群聊,广播,发送文本及图片消息以及传输文件。同时课题也实现了一套流式数据传输的演示程序,以模拟物联网系统中需要处理流式数据的应用场景,如智慧医疗系统中对患者生命体征数据的监控。
- 语言及框架:
- C#,Go,Kotlin,JavaScript
- .NET WebAPI,Gin,Vue,Gorm,MySQL,JWT
- 服务器搭建:
- 采用前后端分离的架构构建。
- 服务器使用.NET Web API框架(结合SignalR组件)和Go语言的开源库Gorilla/Websocket两种技术方案分别实现。
- 使用MySQL存储用户信息,使用JWT进行身份认证与鉴权。
- 客户端实现:
- Web端使用Vue框架开发,Android使用Kotlin语言开发。
- 在Web端针对基于SignalR的服务器和基于Go(WebSocket)的服务器分别设计封装了两套不同的通信接口。
- Web端使用SignalR的JS语言支持与服务器(基于SignalR)通信。使用原生HTML5原生Websocket支持与服务器(基于Go)通信。
- Android使用Kotlin开发,使用SignalR的Java语言支持与服务器(基于SignalR)通信。
- 实时通信系统功能演示视频(点击跳转)
- 聊天室:
- 图片消息:
- 文件传输:
- 流式数据传输:
- .NET服务器:
https://github.com/HaoyuanMa/IM-Api - Go服务器:
https://github.com/HaoyuanMa/IM-Api-go - Web客户端:
https://github.com/HaoyuanMa/IM-Front-Web - Android客户端:
https://github.com/HaoyuanMa/IM-Front-Android - 流式数据生成demo:
https://github.com/HaoyuanMa/IM-DataStreamGenerator-CSharp
https://github.com/HaoyuanMa/IM-DataStreamGenerator-go