欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

请教一下,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轮询了吧,那这个情况的话,应该是用长轮询了吧