13、浏览器推送通知开发全解析

浏览器推送通知开发详解

浏览器推送通知开发全解析

1. 远程通知架构

在探讨具体示例和代码之前,先了解一下推送通知的工作原理。向浏览器发送通知需要满足以下三个条件:
1. 支持接收、处理和显示通知的浏览器 :浏览器需具备基本的通知处理能力。
2. 用于向一个或多个浏览器发送通知的应用(后端应用) :这是整个通知系统的发送源头。
3. 管理向浏览器交付通知的硬件/软件解决方案(推送服务) :负责通知的中转和分发。

其中,第二个和第三个条件的拆分可能会让人有些困惑。浏览器是运行他人代码的容器,存在恶意代码破坏用户系统的风险。HTML、CSS 和 JavaScript 被浏览器进行了沙盒处理,对当前应用之外的影响有限。服务工作线程改变了这一点,但它也有额外的安全保障。

早期,许多浏览器厂商允许开发者发布扩展来修改浏览器的内部工作方式,但随着时间推移,浏览器对内部操作的限制越来越严格。为了提供安全的通知环境,浏览器对通知的支持必须成为其核心组件,能够在应用上下文之外工作,并在必要时唤醒服务工作线程。

向浏览器发送通知也需要简化流程。后端应用通常不会直接连接到浏览器,特别是当应用未在浏览器中加载时。浏览器请求页面后会关闭连接,虽然可以使用 WebSockets 来实现,但维护大量的套接字连接是不现实的。

为了实现这一切并减少对浏览器和运行浏览器的计算机系统或智能手机的影响,推送规范使用中间服务器进程来管理订阅和通知交付。这个服务器通常位于云端,由浏览器厂商提供。当网页应用订阅通知时,浏览器会向其云推送服务注册订阅信息。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值