基于WebSocket的聊天系统

基于WebSocket的聊天系统1、WebChat:ASP.NET的MVC模式实现聊天网站2、WebSocket-Server:C#实现的WebSocket的服务器端3、AndChat:Android客户端实现代码

基于WebSocket的聊天系统


1需求分析说明

编写一个基于WebSocket的聊天程序,整个系统,实用了C#开发,.NET网站开发,Android开发,在开发实践中学习。

1.1基本功能需求

(1)基于 Websocket协议,实⽤C#语⾔写⼀个BS聊天⼩程序

(2)实现用户的注册登录,并进行数据库有效管理

(3)使用一种设计模式

1.2各模块功能需求

1WebSocket客户端

利用bootstrap实现聊天主界面开发。通过WebSocket协议实现浏览器的大厅聊天以及一对一聊天。

2c#服务器模块

利用C#语言自己实现了一个WebSocket的服务器,对协议进行解析,并对聊天信息的发送进行管理。

3Android手机端

利用WebView控件实现Android端的聊天。同时利用JavaScriptJava的交互编程实现手机端的用户管理。

4、用户注册登录模块

网站采用MVC设计模式,实现用户的注册与登录功能,并进行数据库操作。


2概要设计说明

2.1系统结构

基于WebSocket的聊天系统

 2-1 系统结构图

2.2模块介绍

基于WebSocket的聊天系统

2-2 模块结构图



3调试分析

遇到的问题:

系统实现过程中真的遇到了很多问题,但遇到问题,解决问题,才真正是程序员的开发历程。在此记录下从开始过程中的所有问题,不管问题大小,供后来借鉴。

  • 数据库的查询并遍历操作:

对数据库的访问是我遇到的用第一个问题,这次使用的Mysql,因为从网上找了一些mysql的操作例程,上面的查询,返回的都是一个int类型的行数,没法实现遍历,最后在同学的帮助下发现了MySqlDataReader这个类,它可以将查询的所有数据存在其中,这样就可以进行后续操作了。

  • jquery,原来就是链接一个库:

之前没有写过网站,所以这部分基础较差,JavaScript也是现学的,有些地方实现起来非常麻烦,以前听说过jquery,这次尝试了一下,发现真的可以简单很多,而且只需要一个链接,既可以实用很多封装好的方法。

  • cookie问题

做用户管理的时候,想找一个可以实现页面切换但用户信息一直存在的方法,选择了用一下cookie,说实话,现在看来这个cookie非常简单,但对于一个完全没用代码实现的人来说,刚开始写的时候还是很困惑的,不知道cookie在哪里添加,如何添加,特别是在用了MVC之后。最后也是进行了多次尝试,找到了最终的实现方法:

HttpCookie myCookie = new HttpCookie(“user”);

myCookie.Value = user.GetUname();

myCookie.Expires.AddDays(1);

Response.Cookies.Add(myCookie);

  • 访问vs自带iis

使用Visual Studio开发时,虽然可以部署到服务器中,但是想让局域网的其他设备进行访问,竟然不可以?!这样我的Android开发的调试就没法弄了,刚开始都不知道什么原因,还以为是自己Android长吁错了,检查了好几遍,没有逻辑性错误,在意识到可能是服务器地址是无效的,从网上找了好多资料都没解决。最后,用电脑开了一个热点,竟然成功了,真是个好办法呀!

  • java与webview中的js交互

Android中利用Webview开发总会遇到这个问题,想要获取出Webvie中的数据时,仅仅利用Android的代码是实现不了的。

实现方法:

1WebView开启JavaScript脚本执行。

2WebView设置供JavaScript调用的交互接口。

3)客户端和网页端编写调用对方的代码。

4用户使用说明

4.1 网站

打开网站地址进入登录界面:

基于WebSocket的聊天系统

 4-1 登录界面

 

 基于WebSocket的聊天系统

 4-2 注册界面

 

登陆后进入主界面:

 基于WebSocket的聊天系统

 4-3 主界面

 

之后就可以输入WebSocket服务器地址进行连接了。

4.2 手机端

 基于WebSocket的聊天系统

 4-4 手机界面(1)  

 基于WebSocket的聊天系统

 4-5 手机界面(2)

最后,附上我的github开源代码,如果大家喜欢,可以拿来看看:

1、WebChat: ASP.NET的MVC模式实现聊天网站(https://github.com/KevinBetterQ/WebSocket-WebChat )
2、WebSocket-Server: C#实现的WebSocket的服务器端 (https://github.com/KevinBetterQ/WebSocket-Server )
3、AndChat: Android客户端实现代码 (https://github.com/KevinBetterQ/WebSocket-AndChat )

今天的文章基于WebSocket的聊天系统分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/27800.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注