【问题标题】:Difference between Notifications API and Push API from Web perspective从 Web 角度看 Notifications API 和 Push API 的区别
【发布时间】:2016-04-23 00:34:29
【问题描述】:

开发Web通知时Chrome Notifications APIPush Notification API有什么区别。什么时候应该使用它们,它们有什么不同?

【问题讨论】:

    标签: javascript web-services web notifications push-notification


    【解决方案1】:

    通知 API Notifications 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/

    【讨论】:

    • 所以当浏览器处于活动或打开状态时两者都可以工作,对吗?
    • 那么区别在于通知 API 不允许用户交互,而 Push API 允许用户单击并与推送的消息进行交互?
    • 我知道通知是从浏览器到操作系统的东西(android、windows 等上的弹出窗口),而推送是从服务器到浏览器的东西(更新的信息、消息等...... )。与浏览器或用户的活动没有直接联系。
    • 显然,通知 API 需要打开浏览器,因为通知 API 是客户端 API。推送通知的行为因浏览器而异。即使浏览器关闭,某些浏览器也可以显示推送通知。目前,Microsoft Edge 和 Apple Safari 支持此功能(Safari 使用 Apple Push Notification Service,而不是 Push API)。
    【解决方案2】:

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

    Notifications 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 月)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-03-01
      • 2015-12-07
      • 1970-01-01
      • 2012-03-16
      • 2017-01-13
      • 1970-01-01
      • 2021-11-06
      • 1970-01-01
      相关资源
      最近更新 更多