请教一下,web在线实时聊天程序(1对1聊天),其中消息接收这个功能,应该怎么设计比较好?
程序员文章站
2022-03-20 13:44:16
...
本帖最后由 stneo1990 于 2013-08-03 15:48:51 编辑 基于PHP的web实时聊天程序,1对1在线实时聊天,不能1对多,也不能多对1
发送消息比较简单,因为有客户端的提交操作可以识别
但是接收消息应该怎么设计比较好?
我的想法是:能不能让接收方只在发送方发送消息以后再执行接收操作,在发送方没有发送消息时,接收方则不会请求数据。
另外,一个用户既是发送方,同时也是接收方,主要是取决于用户当前的操作
发送消息比较简单,因为有客户端的提交操作可以识别
但是接收消息应该怎么设计比较好?
我的想法是:能不能让接收方只在发送方发送消息以后再执行接收操作,在发送方没有发送消息时,接收方则不会请求数据。
另外,一个用户既是发送方,同时也是接收方,主要是取决于用户当前的操作
回复讨论(解决方案)
看你说的好像还是在一般网页提交的思路
连天还是考虑长连接+socket/websocket吧
看你说的好像还是在一般网页提交的思路
连天还是考虑长连接+socket/websocket吧
目前我查到的资料有三种说法(不知道是不是有重复):
1、长连接
2、轮询
3、websocket
不知道这三种是不是都可以完成我说的目标?
长连接+socket如果没有控件在浏览器实现并不容易
websocket是html5的,并非所有浏览器都支持,只有较新版本的可以尝试
ajax轮询网上有例子,可以搜索一下
长连接+socket如果没有控件在浏览器实现并不容易
websocket是html5的,并非所有浏览器都支持,只有较新版本的可以尝试
ajax轮询网上有例子,可以搜索一下
那这么说的话,应该是用ajax轮询了吧,那这个情况的话,应该是用长轮询了吧
上一篇: js Canvas绘制圆形时钟效果
下一篇: Thinkphp操作MsSQL心得