Node.js 推送通知RESTful WebApp Angular2/NodeJS
我正在开发一个Restful Web应用程序。我划分前端和后端,前端使用Angular2,后端使用NodeJS 我想使用通知并将其推送给特定用户 示例:如果我的用户决定订阅,当我决定发送通知时,或者如果我的NodeJS serveur想要向用户组发送消息,他可能会收到一个桌面通知 我已经看到了很多不同的前端和后端模块,但是我有点迷路了 在体系结构上,我应该如何在应用程序中添加此服务?Node.js 推送通知RESTful WebApp Angular2/NodeJS,node.js,rest,angular,push-notification,Node.js,Rest,Angular,Push Notification,我正在开发一个Restful Web应用程序。我划分前端和后端,前端使用Angular2,后端使用NodeJS 我想使用通知并将其推送给特定用户 示例:如果我的用户决定订阅,当我决定发送通知时,或者如果我的NodeJS serveur想要向用户组发送消息,他可能会收到一个桌面通知 我已经看到了很多不同的前端和后端模块,但是我有点迷路了 在体系结构上,我应该如何在应用程序中添加此服务? 我应该使用特定的节点模块吗?您可以使用WebSocket从node.js服务器推送数据。将ws包添加到服务器的p
我应该使用特定的节点模块吗?您可以使用WebSocket从node.js服务器推送数据。将ws包添加到服务器的package.json中。请在此处查看BidServer.ts:
Angular客户端在这里:您谈论的是桌面通知。我猜您希望用户在浏览器或应用程序关闭时也能收到通知。在这种情况下,您需要一名
服务人员
。服务人员
是浏览器在后台运行的脚本,当浏览器或应用程序关闭时,消息将被推送到该脚本。有关服务人员的详细介绍,
。Angular从5.0.0开始在生产版本中实施了一个服务人员。克里克
在后端,您需要一个特殊的节点模块来发送通知。例如,但是还有很多其他的。此特殊节点模块连接到实际发送消息的消息传递服务。例如,您可以使用谷歌的跨平台消息传递解决方案Firebase云消息传递(FCM)
(谷歌云消息传递(GCM)
)的继任者)。它可以发送到Web、iOS和Android
在客户端,您需要为推送通知注册服务人员。然后,您将获得一个需要存储在节点服务器端的端点。每次都会使用此端点向消息传递服务发送推送请求
您还可以使用付费推送通知提供程序来完成此工作
设置WebSocket
连接(如socket.io
)将不起作用,因为它无法与服务人员保持连接
事实上,我想如果我使用WebSockets,我的客户端应用程序必须打开。如果我了解通知的工作原理,我应该能够向我的用户发送桌面通知,即使他们的浏览器已关闭?请参阅通知:在服务器上,您可以检查websocket是否已关闭,以不向关闭浏览器的客户端发送通知。您找到解决方案了吗?我有同样的问题。WebSocket不是解决方案,因为您的目标是向桌面发送通知,所以用户可以关闭浏览器并接收通知。请分享你的知识来帮助我和其他人。你可以回答你自己的问题,人们可以为此给予赞扬。最后,我们没有集成此功能。当时它是新的,所以我希望现在更容易集成。如果您发现了什么,请毫不犹豫地分享您的解决方案!我认为这种需求应该成为常态。太好了,这正是我想要的信息。Angular 5似乎填补了这些话题的空白。@LewisGodgiven-祝你好运!!