Stack Overflow桌面通知如何工作?

时间:2014-05-11 15:44:09

标签: javascript html html5 web web-notifications

也许这是一个相当大且含糊不清的问题:

在Stack Overflow聊天室中,有一个“启用桌面通知”按钮,当有人回复你时会在系统托盘中显示一些内容。

这是什么机制?这总是让我很好奇。

网站如何访问系统托盘?

3 个答案:

答案 0 :(得分:13)

它使用Notification对象(即var n = new Notification("Hello");)在每个网站的基础上提供本地通知。每个浏览器以不同的方式实施标准(请参阅ChromeFirefoxSafari),但它们的运行方式基本相同,根据其拥有的权限发送通知({{1} }),可以是window.Notification.permission(还没有被问到,在这种情况下你会default),window.Notification.requestPermission();granted。 Opera和Internet Explorer目前不支持桌面通知。

答案 1 :(得分:5)

他们称之为桌面通知,它使用Notifications API

基本上,网站会检查Notifications API支持,然后用户授予或拒绝网站显示通知的权限。

以下more information介绍了API的工作原理。

答案 2 :(得分:1)

这是WebSockets - Web APIs的帮助。客户端和服务器之间实际上存在持久连接。并且双方都可以随时开始发送数据。