之前项目中是用的是soket.js实现前端与后台soket服务实现连接没有问题,后来因为项目需引入微信小程序同样需要通过websoket方式连接,结果通过小程序提供的wx.connectSocket()方式连接时一直报 Error during WebSocket handshake: Unexpected response code: 200错误,网上查了说是拦截器的原因,经过反复查找并未发现拦截器有问题,最后仔细查看 是后台注册hander时出错:
registry.addHandler(new CustomerWebSocketHandler(),"/sockjs/customer/chat").addInterceptors(new CustomerWebHandshakeInterceptor()).withSockJS()
将此处的withSockJS()去除,就可以通过原生方式连接了,因为soket在浏览器不支持wobsoket请求是会自动切换为http请求轮训方式