@EnableWebSocket
public class ChatConfig implements WebSocketConfigurer {
@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
registry.addHandler(getWebSocketHandler(), "/chat").setAllowedOrigins("*");
}
@Bean
public MessageHandler getWebSocketHandler(){
return new MessageHandler();
}
}
@EnableWebSocket 是一个 Spring 注解,用于启用 WebSocket 功能。通常会在配置类上添加这个注解,以表明该类将配置 WebSocket 的相关内容
registerWebSocketHandlers
方法是WebSocketConfigurer
接口的实现方法,用于注册 WebSocket 处理程序和指定与其关联的端点。- MessageHandler是自定义的控制器
-
在这里,通过
registry.addHandler()
方法注册了一个 WebSocket 处理程序,并指定了它对应的端点为/chat
。 -
getWebSocketHandler()
方法返回的是一个MessageHandler
实例,这个处理程序将负责处理 WebSocket 连接和消息。 -
setAllowedOrigins("*")
表示允许来自任何源的 WebSocket 连接。这在开发阶段或者需要公开访问的场景下比较常见。在生产环境中,可以根据需要设置具体的允许源。