WebIM 聊天 Demo
最近 2 个月用业余时间写了一个 IM ,动手之前想了很多,包括前期设计、语言、数据库等,经过了一番思想斗争,最终前台用 Vue.js 展示,Server 使用 node ,数据库使用 MongoDB ,不想用关系型数据库,存储消息不方便,使用 WebSocket 与 server 进行即时通讯,要问为什么选这几个,因为 node 不熟悉,VueJS 没用过,MongoDB 没用过,借机会熟悉下,岂不美哉,哈哈哈~~~
想象很丰满,上手很骨干,真正开始上手的时候发现自己的思路是错的,想太多是没有用的,水滴石穿、铁杵成针这些都是鲜活的例子,所以决定先把功能跑通,写的 low 就 low 吧,本身也就是个小屌丝儿,自我安慰,勿喷。
千里之行始于足下,走起,目前已经用最基本的功能实现了连接服务器、二人会话(需同时在线)、获取历史消息记录三个功能,后续会对代码进行重构持续更新,写完后我为它起了一个自认为响亮的名字 “MountTalk”。
先把源码连接贴出来:
MountTalk-web:https://github.com/yuhongda0315/mounttalk-web
MountTalk-Server:https://github.com/yuhongda0315/mounttalk-server
第一次向 github 传项目,写的很一般,后续慢慢更新吧。
实现思路:
1、使用 node WebSocket 建立连接。
2、在 WebSocket 的 onMessage 事件中处理请求(下面会说到)。
3、持久化。
上图两张:
转载于:https://www.cnblogs.com/yuhongda0315/p/5845995.html
WebIM 聊天 Demo相关推荐
- WebRTC 聊天Demo
我想大部分人应该都还记得"你好Chrome,火狐正在呼叫!"的博客和Demo,向大家展示了在火狐和Chrome中进行WebRTC视频聊天,获得了很多朋友的注意.从那开始,Fresh ...
- Android基于讯飞AIUI的聊天Demo
基于讯飞AIUI实现一个AI聊天Demo,首先在AIUI开放平台创建应用,做下简单配置,勾选想要的语义技能,记得保存修改 然后选择点开发工具,选择下载对应的SDK 应用信息里有appid,回头下载de ...
- socket局域网聊天demo
socket局域网聊天demo,地址包内有实现源码:https://download.csdn.net/download/wyazyf/11457936
- 微信小程序聊天demo
本身经历历时1个月,完成 微信小程序前后端聊天Demo,前端(微信小程序)后端(java),服务器[linux(nginx)],涵盖功能,微信授权认证首页,主页面,不同聊天的房间以及分类,个人信息页面 ...
- Android框架之路——聊天Demo实现
一.所用技术 GreenDao存储聊天数据: RecyclerView根据viewtype显示聊天界面: butterknife绑定view: 如果这些你还没有了解,你可以参考这些文章: Androi ...
- 使用网易云信实现的文字图片聊天Demo
一个单聊demo,可以收发文字消息和图片消息,基于网易云信实现 文件:590m.com/f/25127180-487136158-31fc8a(访问密码:551685) 记得在初学Android时,自 ...
- Kivy 聊天Demo
代码链接 github:https://github.com/fainco/Learning/tree/master/Kivy/ChatApp 欢迎加入公众号:数学交点 /* Kivy Chat De ...
- 高并发MINA框架,网络编程(SOCKET)实现,简单的网络聊天DEMO
MINA线程模型 一个IO Processor线程接管所有Sockets,进行I/O侦听.当某个Socket有I/O事件时,把该Socket委派给 I/O Processor 线程池中一个空闲线程处理 ...
- 记一次导入环信聊天demo的过程
1,下载sdk: 环新官网:[环新官网](http://www.easemob.com/download/im) 下载sdk 目录结构:**doc文件夹:SDK相关API文档examples文件夹: ...
- JAVA基于NIO客户端对客户端简单聊天DEMO(服务器转发消息)
自学JAVA,学到网络通信socket,很困惑,想写一个客户端对客户端的简单例子,但是网上一搜,全都是客户端对服务端,很无奈,百度提问一个月没回答,因此自己寻找各种途径,终于写成.代码如下,其中必然有 ...
最新文章
- OpenCV 开闭运算
- java rsa数字签名_RSA 数字签名算法(Java版)
- uvalive5986(贪心)
- Azure 内容审查器之羞羞图审查
- 【Jmeter篇】临界区控制器Critical Section Controller业务流顺序负载压测
- Python——异常基础
- 滴滴“负重”387天
- sumif单列求和_Sumif、Sumifs单列多条件求和
- 网站SEO提升关键词排名的六个步骤
- STM32CubeIDE使用总结(三)——debug调试程序
- web课程设计网页规划与设计:HTML+CSS美妆设计题材——雅诗兰黛(5页)
- 手机厂商要和年轻人交朋友,性价比日渐式微?
- 腾讯自研HIDS「洋葱」后台上云架构演进实践
- Event Driven Class OSAL 基于事件驱动的模拟操作系统
- 美国 普渡 计算机科学本科,美国大学本科普渡大学CS怎么样?
- 为什么要限制兑换外汇额度?
- js继承(ES5,ES6)
- 经典机器学习算法:高斯判别分析GDA
- 猜字母游戏java源代码
- 言语理解-片段阅读的结构剖析练习
热门文章
- 计算机网络与Internet发展历史
- 南昌工学院计算机科学与技术专业,南昌工程学院特色专业介绍_计算机科学与技术_专业课程介绍_专业排名_就业方向...
- ubuntu18安装N卡驱动
- 学好机器学习需要哪些数学知识?
- Windows操作系统进阶:防火墙基础和Windows Defender
- ibm z系列服务器图片,IBM Z系列本本最清晰图片全面曝光(图)
- U盘分区了怎么恢复?详细演示两个方法
- [数据仓库]分层概念,ODS,DM,DWD,DWS,DIM的概念
- 采用腾讯云直播断流续播相关问题
- 【Unity3D进阶4-15】Lua热更新