Avi*_*ash 2 spring spring-boot spring-websocket
我想开发一个应用程序,我想将消息(或数据)从后端 Spring boot 应用程序推送到 UI。
我有以下要求 -
或者
考虑有一个正在运行的后台进程会生成事件,并且我们希望将这些事件推送到 UI。
为此,我遇到了可以在 Spring Boot 应用程序中使用的 WebSocket 组件。
但是,是否需要任何其他设置才能将传入数据推送到 UI?
任何帮助表示赞赏。
谢谢,
阿维纳什·德什穆克
小智 6
后端无法神奇地将更新推送到客户端 UI。后端将无法知道 UI 存在于何处(即 UI 的 IP 地址是什么),即使知道,它也可能无权建立连接(由于防火墙或 NAT)。
\n\n因此,客户端 UI 必须请求更新。实现此目的的一种方法是在 UI 应用程序中设置一个计时器,通过 REST 轮询更新。但这本质上就是 websocket 所做的——开销要少得多。
\n\n这就是您日常使用的常见应用程序始终工作的方式。所以我不知道为什么你不想走 websockets 路线。
\n\n...
\n\n从Spring 5.0.5.RELEASE开始,\xe2\x80\x99不需要进行任何定制,因为@SendToUser注释的改进,允许我们通过\xe2\x80\x9c/向用户目的地发送消息user/{sessionId}/\xe2\x80\xa6\xe2\x80\x9d 而不是 \xe2\x80\x9c/user/{user}/\xe2\x80\xa6\xe2\x80\x9c。
\n\n这意味着注释的工作依赖于输入消息的会话 ID,有效地将回复发送到会话私有的目标:
\n\n...
\n\n这里有一个很好的例子:
\n\nhttps://www.baeldung.com/spring-websockets-sendtouser
\n| 归档时间: |
|
| 查看次数: |
8723 次 |
| 最近记录: |