GeXiangDong

精通Java、SQL、Spring的拼写,擅长Linux、Windows的开关机

0%

客户端连接spring websocket 返回403错误

今天用小程序连接 spring websocket服务器,小程序端一直报403错误。

VM1513 asdebug.js:1 WebSocket connection to 'ws://localhost:8080/socket/' failed: Error during WebSocket handshake: Unexpected response code: 403

检查后端spring websecurity授权,没有问题,后来发现是被websocket默认给禁止了非同源访问。

修改 websocket 的配置类,增加了 .setAllowedOrigins("*"),修改后如下:

1
2
3
4
5
6
7
8
9
10
public class WebsocketConfig implements WebSocketMessageBrokerConfigurer {

//其他部分略去

@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
//客户端调用的URL;
registry.addEndpoint("/socket").setAllowedOrigins("*");
}

改完后重启,小程序websocket就可以连接了。