即时聊天软件的原理,Web网页的聊天又是怎么实现的呢?
2个回答
展开全部
这种即时聊天的需要常连接来实现,比较典型的有php的Workerman和nodejs的socket.io,
原理是这样的。以socket.io为例,访客端发送消息给nodejs[room(房间可以是域名加公司编号),uid(访客id可以是浏览器内核或者代理加ip加操作系统生成),workerid(数据库对应客服的id),type(消息类型 可以是sendmsg,getmsg。。。)],监听到事件后在房间内广播进行推送给对应的workerid进行渲染显示在页面。在发送信息的同时写入到数据库。
nodejs就是一个传话的人但是24小时监听的,逻辑基本都在nodejs中处理。
原理是这样的。以socket.io为例,访客端发送消息给nodejs[room(房间可以是域名加公司编号),uid(访客id可以是浏览器内核或者代理加ip加操作系统生成),workerid(数据库对应客服的id),type(消息类型 可以是sendmsg,getmsg。。。)],监听到事件后在房间内广播进行推送给对应的workerid进行渲染显示在页面。在发送信息的同时写入到数据库。
nodejs就是一个传话的人但是24小时监听的,逻辑基本都在nodejs中处理。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询