使用 Web 通知 API 推送
Posted
技术标签:
【中文标题】使用 Web 通知 API 推送【英文标题】:Push with Web Notifications API 【发布时间】:2017-04-19 02:11:13 【问题描述】:我刚刚开始研究 Web Notifications API。当我加载页面时,这个 JS 会立即显示一个通知:
if("Notification" in window)
if(Notification.permission == "granted")
var notification = new Notification("Notification Title", "body":"Message Body", "icon":"my-icon.png");
else
Notification.requestPermission(function (permission)
if (permission === "granted")
var notification = new Notification("Notification Title", "body":"Message Body", "icon":"my-icon.png");
);
else
alert("Your browser doesn't support notifications");
但我更感兴趣的是当其他人访问同一页面时向我显示通知。例如,每当有人(不是我)访问customer.php
时,通知应该显示给我,而不是他们。
这可以通过 Web Notification API 完成吗?如果可以,我将如何处理?
【问题讨论】:
你需要一个网络服务器吗? 您需要一些服务器代码。此外,即使您当时不在线,您也需要使用 Push API(或 Pushpad 之类的服务)来传递通知。首先以某种方式对您的用户进行身份验证(身份验证或 cookie),然后为他们订阅推送通知(请求许可),然后当有人访问该页面时,从您的服务器触发通知。 【参考方案1】:-
通知注册是针对特定角色(希望接收通知的人)。
因此,您的 Notification.permission 代码将针对应用程序的特定用户执行。
向网站添加代码以将消息推送到您的服务器,可能有多种方式之一,在站点加载时调用 javascript 函数并以异步方式将消息发布到服务器。
服务器端,你有一个 api 接收消息发布通知给注册用户(根据上述第 1 点)
【讨论】:
以上是关于使用 Web 通知 API 推送的主要内容,如果未能解决你的问题,请参考以下文章
在 Xamarin 上推送通知的 Web API - 流程是啥?
为啥没有通过 Firebase FCM 从 Web API 定向到特定 iOS 设备的推送通知?