无法连接到 websocket

无法连接到 websocket

当我尝试从 android stomp 客户端连接到 spring boot web socket时,它没有连接,并且 catalina 日志显示

Handshake failed due to invalid Upgrade header: null

Tomcat 服务器运行在 apache 后面,而 apache 服务器运行在 https 上。我在tomcat中没有添加https.所有 http 请求都重定向到 https 这是我尝试连接到 websocket 的方式

mStompClient = Stomp.over(Stomp.ConnectionProvider.JWS, "wss://chat.example.com/ws/chat/websocket", headers);

但它在本地机器上运行时有效

mStompClient = Stomp.over(Stomp.ConnectionProvider.JWS, "http://10.0.2.2:8080/chat/ws/chat/websocket", headers);

这是我的 stomp 端点设置

registry.addEndpoint("/chat").setHandshakeHandler(new HandShakeHandler()).withSockJS();

我已经启用mod proxy wstunnel并在虚拟主机配置中添加

ProxyPass / http://localhost:8080/chat/
proxyPassReverse / http://localhost:8080/chat/
ProxyPass /wss/ ws://localhost:8080/chat/

有人知道如何解决这个问题吗?任何帮助都将不胜感激。如果您需要更多详细信息,请询问

相关内容