WebSocket握手期间出错:意外响应代码:403

M.B*_*Bel 12 java spring websocket cors spring-websocket

我已经实现的WebSockets春季启动应用程序,并试图测试使用Chrome扩展"的WS连接时有以下错误信息智能的WebSocket客户端 ".但是,在本地运行Spring Boot应用程序时没有问题.

WebSocket connection to 'ws://192.168.X.XYZ:8080/test' failed: 
Error during WebSocket handshake: Unexpected response code: 403
Run Code Online (Sandbox Code Playgroud)

我看到的唯一区别是在Request标头中:

在它工作的那个 - 起源:http://192.168.X.XYZ:8080

在一个它不工作 - 起源:铬扩展:// omalebghpgejjiaoknljcfmglgbpocdp

我在WebSocketConfig类中所做的如下:

@Override
public void registerWebSocketHandlers(WebSocketHandlerRegistry registry) {
    registry.addHandler(myHandler(), "/test").setAllowedOrigins("http://192.168.X.XYZ:8080");
}
Run Code Online (Sandbox Code Playgroud)

仍然无法正常工作.

您能告诉我该错误的原因是什么以及如何解决?

先感谢您.

Bri*_*zel 10

您需要将您的"chrome-extension://..." 源配置为允许的来源甚至是"*",否则它将被服务器拒绝.

  • setAllowedOrigins( "*"); 解决了这个问题.谢谢! (4认同)