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

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

WBOY
WBOY원래의
2016-06-23 14:17:59976검색

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.