在 Spring Boot 后端应用程序中添加允许跨域请求的配置,以允许 SockJS 连接到 websocket。
在 Spring Boot 后端应用程序的配置文件中添加以下配置:
@Configuration
@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
@Override
public void configureMessageBroker(MessageBrokerRegistry config) {
config.enableSimpleBroker("/topic");
config.setApplicationDestinationPrefixes("/app");
}
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint("/websocket")
.setAllowedOrigins("*")
.withSockJS();
}
}
该配置允许任何来源进行 websocket 连接。如果你想限制来源,将 setAllowedOrigins("*")
更改为允许的域名即可。