Error during WebSocket handshake: Unexpected response code:404

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 协议的请求被拦截器拦截下来了。 

希望此文能够帮助到您!

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值