一、WebSocket 服务端配置
1.1 服务注册
服务注册分为两种模式:注解模式(推荐)、XML配置模式
1.1.1 注解配置模式
/**
*
* @author Goma
*
*/
@Configuration
@EnableWebSocket
public class WebSocketConfig implements WebSocketConfigurer {
@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
registry.addHandler(myhandler(), "/websocket").addInterceptors(myInterceptors()).setAllowedOrigins("*");
registry.addHandler(myhandler(), "/sockjs/websocket").addInterceptors(myInterceptors()).withSockJS();
}
@Bean
public WebSocketHandler myhandler() {
return new WebsocketEndPoint();
}
@Bean
public HandshakeInterceptor myInterceptors() {
return new HandshakeInterceptor();
}
}
注:该类需要放在SpringMVC扫描路径下
@Configuration 指明该类为Spring 配置类
@EnableWebSocket 声明该类支持WebSocket
registry.addHandler(myhandler(), "/websocket").addInterceptors(myInterceptors()).setAllowedOrigins("*");
用来注册WebSocket Server实现类,第二个参数是访问WebSocket的地址
注:setAllowedOrigins方法用来设置来自那些域名的请求可访问,默认为localhost
registry.addHandler(myhandler(), "/sockjs/websocket").addInterceptors(myInterceptors