Home  >  Article  >  Backend Development  >  请教一下,web在线实时聊天程序(1对1聊天),其中消息接收这个功能,应该怎么设计比较好?

请教一下,web在线实时聊天程序(1对1聊天),其中消息接收这个功能,应该怎么设计比较好?

WBOY
WBOYOriginal
2016-06-23 14:17:59977browse

本帖最后由 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轮询了吧,那这个情况的话,应该是用长轮询了吧

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn