我正在使用 Spring websocket 来实现实时双向消息传递。我的配置类似于 this official spring guide,这是我的控制器:
@MessageMapping("/test")
@SendTo("/topic/greetings")
public String greeting(String message) {
return message;
}
请注意,我没有在后端使用 convertAndSend
,而是通过这种方式直接从 Web 客户端(js)发送消息:
stompClient.send("/app/test", {}, "message");
这工作正常,所有客户都可以收到每条消息。这是我的问题:我需要根据某些条件过滤每条消息的订阅者。假设我想向所有 100 个具有特定 stomp 会话 ID 的订阅者中的 3 个发送消息(这只是一个示例解释我的需要)