我用教程创建了一个基本的websocket。
以下是配置:
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig extends AbstractWebSocketMessageBrokerConfigurer {
@Override
public void configureMessageBroker(MessageBrokerRegistry config) {
config.enableSimpleBroker("/topic");
config.setApplicationDestinationPrefixes("/app");
}
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/chat");
registry.addEndpoint("/chat").withSockJS();
}
}
下面是消息处理控制器:
@MessageMapping("/chat")
@SendTo("/topic/messages")
public OutputMessage send(Message message) throws Exception {
return new OutputMessage("Hello World!");
}
一切正常,但从我的调查来看,websockets在默认情况下似乎有一个应用范围(通过连接到频道,我可以看到来自所有用户的所有调用)。
我想做的是只能看到来自当前用户会话或当前视图的调用。关于如何应用这些配置有什么想法吗?
暂无答案!
目前还没有任何答案,快来回答吧!