在某种情况下,我的应用程序有问题。
我们有一个嵌入了 jetty webserver 的 java 服务器,以及一个客户端的 air 应用程序。
它工作正常,但在某个客户的单一情况下。
他们有一个不由他们管理的专用网络(并且很少有机会根据请求进行更改)。因此,他们允许的唯一端口是 80 和 443。
服务器和客户端之间的通信是通过 websockets 和 http 进行的。
“在线”检查是通过 http 进行的,然后,我们使用 websockets 通知客户端以便开始它们之间的通信。
问题是,在这种情况下,“在线”状态正常工作,客户端发送的任何通信(强制),当它通过 http 时,都会到达服务器,但是,当服务器使用 websockets 与客户端通信时,它不起作用。
我们正在使用wireshark来检查通信:在工作设置中,当客户端应用程序启动时,服务器端的wireshark上会显示一个websocket(在服务器上注册客户端)。而且,在那之后,仅用于从服务器到客户端的 websockets 也不会显示。
可能是什么问题?80端口?(该网络上的 443 也是如此)。它可以是阻止 ws:// 消息的代理/防火墙吗?我在某处读过 wss://(加密的 websockets)可以工作吗?
谢谢你的帮助。
编辑,所以,我尝试使用 https 和 wss 通信,同样的事情发生了。客户端和服务器之间没有设置 websocket(在服务器上注册客户端)。
客户网络上的 http 正在发生这种情况。在我的测试网络上,它适用于 http/ws 但不适用于 https/wss..