websocket client无法连接到websocket server 的问题

1. 问题描述

生产环境的websocket client和server无法通信

2. 日志现象

通过查看日志和问题复现,定位到是client连接到server失败,导致无法通信。

出现问题的代码

出现问题的日志

21:25:27.790 [main] INFO websocket.MyWebSocketClient - start to connect... 21:25:30.943 [pool-1-thread-1] INFO websocket.MyWebSocketClient - The HTTP response from the server [200] did not permit the HTTP upgrade to WebSocket 21:26:00.823 [pool-1-thread-1] INFO websocket.MyWebSocketClient - The HTTP response from the server [200] did not permit the HTTP upgrade to WebSocket

该日志是catch异常后打印出来的。

3.分析过程

通过上面的代码我日志,知道是连接失败,但是从日志来看,以为是成功连接了,只是http和websocket的版本差异导致的,一直在分析。知直到费了大量的时间排查对比代码,才发现是服务端的SpringSecurity拦截了,导致客户端无法连接。

4. 修改方案

只需要将websocket的通信路径加入白名单即可。

相关推荐
AuroraDPY10 小时前
计算机网络:基于TCP协议的自定义协议实现网络计算器功能
网络·tcp/ip·计算机网络
张人玉10 小时前
TCP 的三次握手和四次挥手
网络·tcp/ip·c#
qq_2546744112 小时前
华为交换机上配置基于 IP 地址的 ACL
网络
宁雨桥12 小时前
WebSocket 核心 API 速查表
网络·websocket·网络协议
打不了嗝 ᥬ᭄13 小时前
【Linux】网络层协议
linux·网络·c++·网络协议·http
一叶飘零_sweeeet13 小时前
Java 项目 HTTP+WebSocket 统一权限控制实战
java·websocket·http·权限控制
进击的圆儿13 小时前
HTTP协议深度解析:从基础到性能优化
网络协议·http·性能优化
才聚PMP13 小时前
关于开启NPDP项目2025年第二次续证工作的通知
网络协议·https·ssl
九河云14 小时前
华为云ECS与Flexus云服务器X实例:差异解析与选型指南
大数据·运维·服务器·网络·人工智能·华为云
头发还没掉光光15 小时前
Linux网络初始及网络通信基本原理
linux·运维·开发语言·网络·c++