javascript - 我可以在特定时间发送 Web 通知吗?

标签 javascript push-notification notifications service-worker web-notifications

我正在尝试实现不需要显示后端交互的通知。这样做的用途是放置一个提醒我按钮,该按钮将在一天中的特定时间(用户指定)发送通知。我对服务 worker 很陌生,但我知道他们是异步工作的。话虽如此,有什么方法可以让我做类似以下伪代码的事情吗?

function timeLeft(time){
    setTimeout(() => showNotification(), time);
}

如果我将它放在常规的 javascript 文件中并且用户仍然打开浏览器,这将起作用。

它不需要完全那样,它只需要解决我的问题。谢谢你提前。

最佳答案

  • 首先,您需要为每个浏览器设置一个 ID。如果您使用 Push API,那么您可以使用浏览器端点。
  • 当用户添加提醒时,您必须将元组(端点、send_at、提醒)存储在您的 中。您服务器上的数据库
  • 运行 定时任务 在您的服务器上(或创建 计划作业 与 Sidekiq 等)以便在正确的时间(使用推送 API)发送提醒

  • 否则,您可以使用允许您创建预定通知的服务:see this example在我的博客上。

    关于javascript - 我可以在特定时间发送 Web 通知吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47335947/

    相关文章:

    android - Android 2.3 或更低版本通知中的可点击自定义 View

    javascript - JQuery 中单个事件的多个函数

    javascript - 在 knockout js中展开一个元素并折叠所有其他元素

    node.js - 如何在Web推送中向特定用户发送推送通知?

    javascript - 解析 Web 应用程序凭据并将推送发送到不同的凭据

    ios - UILocalNotification 结束日期

    javascript - 使用封闭装置分隔柜台

    javascript - 防止 React Router 路由服务器 API 路径

    android - 具有多个发件人的 GCM

    ios - 如何从 iPhone 到 Apple Watch 接收定时通知(本地通知)