Spring mvc WebSocket握手期间出错:意外响应代码:405

Spring mvc WebSocket握手期间出错:意外响应代码:405,spring-mvc,websocket,spring-websocket,Spring Mvc,Websocket,Spring Websocket,我有一个带有Spring和SockJs的Web套接字,我还必须为“WebSocket”标准公开该套接字 我有我的经纪人: @Override public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) { registry.addHandler(mySocketHandler(), "/mySocket").setAllowedOrigins("*"); } 通过浏览器创建websocket时,使用以

我有一个带有Spring和SockJs的Web套接字,我还必须为“WebSocket”标准公开该套接字

我有我的经纪人:

@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
    registry.addHandler(mySocketHandler(), "/mySocket").setAllowedOrigins("*");
}
通过浏览器创建websocket时,使用以下命令:

var ws = new WebSocket('wss://localhost:8443/myApp/mySocket')
我有以下错误:

WebSocket connection to 'wss://localhost:8443/myApp/mySocket' failed: Error during WebSocket handshake: Unexpected response code: 405
有什么建议吗


谢谢。

我找到了解决办法

出现此错误是因为@Configuration组件中缺少注释@EnableWebSocket


添加@EnableWebSocket后,连接已正确建立。

您的服务器支持加密连接吗?你是如何配置的?当然支持。我的应用程序以https提供服务,并使用已存在的sockets和sockjs。“已存在的sockets和sockjs”可以使用回退选项。可能WebSocket还没有配置为与SSL/TLS一起使用。我不明白。应用程序可以使用sockjs正常连接到web套接字;我正在尝试添加一个普通的WebSocket,但我有一个错误…“应用程序可以使用sockjs正常连接到web套接字”这是我的观点:可能它不通过WebSocket(!)连接,但使用了一个回退选项,因为WebSocket在您的服务器上不工作。SockJS可以(!)使用WebSocket。