【发布时间】:2019-05-28 06:26:41
【问题描述】:
我在使用 SockJs 和 CORS 时遇到问题。我用弹簧。我将 WebMvcConfigured 设置如下:
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry
.addMapping("/**")
.allowedOrigins("http://localhost:3000")
.allowCredentials(true);
;
}
};
}
和WebSocketConfig如下:
@Override
public void configureMessageBroker(MessageBrokerRegistry config) {
config.enableSimpleBroker("/topic");
config.setApplicationDestinationPrefixes("/app");
}
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry
.addEndpoint("/gs-guide-websocket")
.setAllowedOrigins("*")
.withSockJS();
}
但是,当我的网络客户端尝试 GET 反对 /gs-guide-websocket/info 时,它会得到一个 404。
SockJs 的规范要求存在/info 路径。似乎即使我确实在服务器端使用了.withSockJS(),它也没有设置/gs-guide-websocket/info 路径。
我应该如何通过spring 和/或spring-websocket 创建这条路径?
谢谢,
凯文
【问题讨论】:
标签: websocket cors spring-websocket sockjs