在项目中使用Spring Security进行验证过滤,后来发现小程序连接不上websocket,网上找了一下,才知道是Spring Security拦截http的同时也拦截了websocket,才导致websocket无法连接。
下面是我的websocket处理类,路径是本地路径拼上/webSocket/后面是两个动态参数,
例如:ws://192.168.2.103:8086/webSocket/testRoomcode/openid1
这是我的解决办法(在Spring Security配置类中进行对websocket的忽略拦截),亲测有效
如果还是不行的话,可以试试在Spring Security配置类中添加以下代码
//忽略websocket拦截
@Override
public void configure(WebSecurity webSecurity){
webSecurity.ignoring().antMatchers(
"/ws/**"
);
}