首页 > 解决方案 > 在 pwa 中带有推送通知的 sse

问题描述

我正在尝试将推送通知集成到 Web 应用程序(也是 PWA)中。我正在使用Mercurehttps://symfony.com/doc/current/mercure.html)向用户发送通知。

webapp 是使用 Angularjs 和 PHP-symfony 制作的。我认为对于 SSE,连接应该保持打开状态或每隔几秒钟重新打开一次以发送事件。

我不知道它是否适用于 PWA。即使 PWA 未打开,我是否可以使用 SSE 向 PWA 发送推送通知?如果没有,我应该使用什么来发送推送通知。

我应该使用网络套接字吗?我见过的所有 websockets 库都创建了通道。而且我不知道如何向数据库中的特定用户发送通知,因为在 websocket 中,区分用户的唯一方法是在他们加入频道时生成的 sessionId。

当用户登录并加入应用程序中的公共频道并找到我想要发送通知然后发送的用户的 sessionId 时,我可能必须将用户的 sessionId 保存在数据库中。

我的问题是,如果我使用 SSE,我可以在 webapp 或 PWA 未打开时发送推送通知吗?websockets会有帮助吗?如果是,请就我如何做我想做的事情提出建议。

标签: javascriptphppush-notificationprogressive-web-appsserver-sent-events

解决方案


推荐阅读