大话WEB端的即时通信实现方案
简议WEB端的即时通信实现方案
作者:田想兵 博客地址:http://www.cnblogs.com/tianxiangbing
网页端实现即时通讯,无非是插件或ajax,插件不在本次讨论的范畴内,ajax的话,我们又可以分为长连接、短连接请求,通常实时性要求很高的话,会采用长连接,或是长短结合的方式。在web端,无插件下,是无法实现消息推的,这个问题直到html5才会得到更好的解决,现阶段的技术,还是集中在ajax上。
本文的例子请点击这里: http://www.lovewebgames.com/loginchat.html
首先,解释下,何为长、短连接:
所谓长连接,指在一个连接上可以连续发送多个数据包,然后断开连接,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。
这是百科里的介绍,用人类语言的意思就是,当你发送一个请求时,这个请求会一直停留在那,不会立即返回消息给你,可能会等待很久,直到有消息出现时,立即返回,此时,完成握手请求。这就是http的长连接。短链接就是我们平时的http请求,没什么好说的。
然后我们来看下场景,我们要做的是一个webIM的东西, 我们先来看下界面,如下图:

这里插入一段ad:这个webIM是或加我的QQ群77813547,会把邀请码以短信的形式的发送到您的手机上。端口网里的一个附属品,如果大家有兴趣的话,可以注册进去看下, 由于目前还在测试阶段,所以注册是遇要邀请码的,有兴趣的同仁可以把手机号和名字私信给我.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架