Error during WebSocket handshake: Unexpected response code:404

xiaoxiao2021-03-01  17

1.Tomcat7.X以上才支持WebSocket,使用时有些注解8.X才支持(例如:@ServerEndpoint),要升级为8.X。

2.Tomcat有自带WebSocket所需jar包,无需在项目中添加jar,需要将项目中添加的jar删除(如:websocket-api.jar)。

3.如若使用NGINX代理,需加上如下配置(主要是location /webSocketTest {}):

server { listen 443; server_name test.xxxx.com; access_log logs/test.xxxx.log main; ssl on; ssl_certificate /etc/test.xxxx.com.cer;  # 这里是服务端的证书路径 ssl_certificate_key /etc/test.xxxx.com.key; # 这里是秘钥路径 ssl_session_timeout 5m; location /webSocketTest { proxy_pass http://test; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection “upgrade”; } }

4.检查请求路径是否正确,项目里面是否设置了拦截器,可能 ws 协议的请求被拦截器拦截下来了。 

希望此文能够帮助到您!

转载请注明原文地址: https://www.6miu.com/read-4200172.html

最新回复(0)