首页 新闻 会员 周边

客户端消息提示

0
悬赏园豆:20 [已解决问题] 解决于 2017-12-11 10:43

请教各位园友,

像博客园这种,有别人回复或者评论,页面上就会收到短消息提示。

这是如何实现的呢?

肖恩部落的主页 肖恩部落 | 小虾三级 | 园豆:585
提问于:2017-11-27 11:48
< >
分享
最佳答案
0

实现的方式有ajax轮询,long poll, websocket.

  前两种是在没有websocket的情况下采取的方式,比较消耗资源,都需要不断建立链接,等待服务器响应,是被动的。

   在H5引入websocket之后,就解决了这种消耗,客户端向浏览器发送一个请求,服务器等有评论或回复数据时,发送给客户端,再通过合适的方式展示。所以,想要实现,最好使用websocket。

收获园豆:11
铁柱成针 | 小虾三级 |园豆:614 | 2017-11-28 09:18
其他回答(3)
0

回复成功的时候插入一条消息记录,状态为未读

定时请求数据,请求到未读消息时显示在页面上

收获园豆:3
顾星河 | 园豆:7173 (大侠五级) | 2017-11-27 11:59
0

1、定时请求

2、WebSocket 双工通讯(推荐)

3、SSE(Server Side Event)推送

4、Comet 长连接

收获园豆:3
幻天芒 | 园豆:37175 (高人七级) | 2017-11-27 12:03
0

msg.cnblogs.com 提供web api(仅内网用),其他站点需要发消息就直接调,没什么特别的。
未读消息数可以用ajax轮询,当然后端可以加点缓存,不需要每次都查数据库。

收获园豆:3
博客园团队 | 园豆:5329 (大侠五级) | 2017-11-30 09:56
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册