我认为解决方案可能是避免使用和使用原始,并将消息发送到您控制的开放会话的目标。@SendToUser
SimpMessagingTemplate
例如。假设您在新的 websocket 会话中具有某个标识,则可以订阅队列名称中包含该标识符的队列:
stomp.subscribe("/queue/chats" + "-" + mycustomidentifier, onmessage);
现在,在Spring websocket监听器端,您可以使用以下命令定向响应:SimpMessagingTemplate
@Controller
public class MyController {
@Autowired
private SimpMessagingTemplate simpMessagingTemplate;
@MessageMapping("/chats")
public void handleChat(@Payload ChatMessage message) {
this.simpMessagingTemplate.convertAndSend("/queue/chats-" + "mycustomidentifier", "[" + getTimestamp() + "]:" + message.getMessage());
}
....