从Web角度来看通知API和推送API之间的区别

问题描述 投票:0回答:3

开发 Web 通知时,Chrome 通知 API推送通知 API 有什么区别。每一种应该何时使用以及它们有何不同?

javascript web-services web notifications push-notification
3个回答
21
投票

通知API 通知 API 允许网页或应用程序发送在系统级别的页面外部显示的通知;这使得 Web 应用程序可以向用户发送信息,即使应用程序处于空闲状态或在后台也是如此。本文着眼于在您自己的应用程序中使用此 API 的基础知识。

https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API/Using_the_Notifications_API

推送API Push API 使 Web 应用程序能够接收从服务器推送给它们的消息,无论 Web 应用程序是否位于用户代理的前台,甚至当前是否已加载。这使开发人员可以向选择加入的用户提供异步通知和更新,从而更好地参与及时的新内容。 https://developer.mozilla.org/en/docs/Web/API/Push_API

查看这些链接以获取更多信息: https://www.w3.org/TR/push-api/ https://www.w3.org/TR/notifications/


1
投票

这可能会令人困惑,但如果我做对了,我自己寻找一个明确的答案,那就是这样的:

通知 API = 用于在用户打开您的网站/应用程序时发送通知,即使在空闲或在后台时也是如此。

Push API = 用于在用户当前未打开您的网站/应用程序时发送通知。

浏览器兼容性

注意:对于 macOS 上的 Safari,Apple 有自己的推送通知 API: https://developer.apple.com/library/archive/documentation/NetworkingInternet/Conceptual/NotificationProgrammingGuideForWebsites/Introduction/Introduction.html

iOS 上的 Safari 仍然不支持这两个 API 中的任何一个(2021 年 2 月)。


0
投票

通知API

浏览器触发系统通知。

推送API

远程服务器触发系统通知
(通常通过浏览器传递

service workers
)。

 

在这两种情况下,应用程序都可以在后台运行。

 

*致谢: @yotaMDN 推送 APIMDN 通知 API

© www.soinside.com 2019 - 2024. All rights reserved.