基于socket通讯的网络聊天室(上)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/m0_37806112/article/details/82288083

需求分析:

         1、 服务器端:负责处理用户发来的各种信息,管理用户的动作(注册、登陆、一对一私聊、查看在线人数)和管理用户的信息。

         2、 客户端:主要用于查看在线人数、发送信息给特定用户群聊、增删改查好友等功能,

总体设计:

       本聊天室系统采用了c/s形式。服务器主要是处理客户输入信息。首先要存储客户的个人资料,相当于注册。再有,在客户的聊天信息时,也要记录下客户的聊天记录,已备查看聊天记录所用。当然,服务器还有自己的动态数据处理。

       客户端采用结构体链表存储客户信息。客户又分为登陆客户和未登陆客户,这就通过修改链表上客户的在线标志。当客户一连接到服务端时,并发服务器为连接的用户创建线程。

详细设计:

          登录模块分析:

                 分为登录和注册两功能,如果未注册,先进行注册将账户保存到服务器,对于登录用户,判断其账户和密码是否正确,并判断它是否在线。

          主界面模块分析:

                  进入主界面后,分为好友管理,个人信息,群聊天地,私聊蜜语,查看聊天记录,下载聊天记录,退出。其中好友管理有查找好友,删除好友,添加好友。

           私聊功能简洁:

                  与QQ有些不同,聊天之前要加好友,当你与A好友建立连接时,B好友无法与你和A好友连接,会提示该好友正在聊天中。

项目截图:

 服务器:

           

                                                                             图(1)服务器截图

 客户端:

           

                                                                          图(2)客户端登录界面

          

                                                                       图(3)客户端主界面截图

         

                                                                            图(4)群聊截图

          

                                                                            图(5)私聊截图

           

                                                                          图(6)在线查看聊天信息

           代码如下:https://github.com/songqiang521/socket_project

           基于socket通讯的网络聊天室(中)

猜你喜欢

转载自blog.csdn.net/m0_37806112/article/details/82288083