【发布时间】:2018-11-22 23:02:58
【问题描述】:
在我的 Angular5 / NodeJS Web 应用程序中,我们有一个需要实时数据的仪表板。
如果数据库中有任何数据变化,我们希望它立即反映在前端。目前,我们正在定期(比如 30 秒)重新加载数据。
socket.io 可以帮助实现这一点吗?
不确定,它如何知道数据库中是否有任何数据变化?
【问题讨论】:
标签: javascript node.js angular websocket socket.io
在我的 Angular5 / NodeJS Web 应用程序中,我们有一个需要实时数据的仪表板。
如果数据库中有任何数据变化,我们希望它立即反映在前端。目前,我们正在定期(比如 30 秒)重新加载数据。
socket.io 可以帮助实现这一点吗?
不确定,它如何知道数据库中是否有任何数据变化?
【问题讨论】:
标签: javascript node.js angular websocket socket.io
您可以使用 HTML5 中的 SSE(服务器发送事件)功能。
服务器发送事件 (SSE) 是一个标准,描述了一旦建立了初始客户端连接,服务器如何向客户端发起数据传输。它们通常用于向浏览器客户端发送消息更新或连续数据流,旨在通过称为 EventSource 的 JavaScript API 增强本地跨浏览器流式传输,客户端通过该 API 请求特定 URL 以接收事件流。
由于 SSE 是单向的,它将节省工作量并提高性能,因为您只想将数据库更新发送到前端,即仅单向。
希望这会对你有所帮助。
【讨论】: