消息通知是 web 网站的一个基本常规功能。web 网站消息管理模块一般都是用户主动请求消息通知,即使采用 socket 技术,也仅仅只是在用户浏览当前系统网站时,才能发现系统推送的消息通知,这样很容易造成消息通知不到位,发现不及时。本场 Chat 利用 HTML5 中的 JavaScript Web Notification API 新增功能,它允许 Chrome、Safari、Firefox 和 Edge 等现代浏览器将消息通知推送到用户的桌面,结合 Socket.io 技术,实现网站消息实时推送至“电脑任务通知栏”。预览地址:https://www.ctrlcv.vip (测试方式:开启两个浏览器,chrome 和 edge,分别登录账号: admin 密码 :123456 和 账号:qwer 密码:qwer 。在 admin 的用户管理中给 qwer 用户推送自定义消息。注意,首次推送,浏览器右上角会出现类似 “显示通知” 的请求,选择允许即可。)
效果图:
所用技术栈包括:Node.js + Express + Socket.io + Vue.js + Element-UI + Notification API 等
你会得到什么?
- Node.js + Express + Socket.io 实现的消息推送后台服务的中转站源码,利用这套 “中转站” ,可结合任何前后端技术,实现系统消息的实时推送。
- Vue.js + Element-UI + Notification API 实现客户端实时接收消息和通过浏览器将消息通知到用户桌面并显示在电脑任务通知栏中的核心代码。
- 了解消息实时推送的整体流程,包括数据库表结构基本设计。
- 了解这套系统部署到服务器生成环境下遇到的坑,及对应解决方案。
- 了解 Nginx、 Node.js、IIS 部署 https 的解决方案。