gpt4 book ai didi

spring-websocket - 禁止在 SimpMessagingTemplate 中的 convertAndSendToUser 方法中广播

转载 作者:行者123 更新时间:2023-12-04 06:18:10 25 4
gpt4 key购买 nike

我正在使用 Spring websocket 实现。向客户端发送消息有两种方式:

1) 使用 @SendToUser注解
2) 使用 convertAndSendToUser SimpMessagingTemplate的方法
@SendToUser接受一个名为 broadcast 的 bool 参数如果设置为 false,则将消息发布到当前 session 。有什么办法可以让我在 SimpMessagingTemplate 中有这种行为吗? .

最佳答案

如果我们看看SendToMethodReturnValueHandler源代码,我们会看到:

if (broadcast) {
this.messagingTemplate.convertAndSendToUser(user, destination, returnValue);
}
else {
this.messagingTemplate.convertAndSendToUser(user, destination, returnValue, createHeaders(sessionId));
}

因此,您的用例所需的只是使用重载的 convertAndSendToUser并提供 Map与`sessionId:
messagingTemplate.convertAndSendToUser(user, destination, payload, 
Collections.singletonMap(SimpMessageHeaderAccessor.SESSION_ID_HEADER, sessionId))

关于spring-websocket - 禁止在 SimpMessagingTemplate 中的 convertAndSendToUser 方法中广播,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28068622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com