2

我使用 WebSockets 创建了一个 Java 和 JavaScript 应用程序。对于 Java 服务器,我使用以下库:https ://github.com/TooTallNate/Java-WebSocket 。

那么关于应用程序:

首先,会话以两条消息开始。第一个是从浏览器发送的,第二个是来自 Java 服务器的回复。之后,Java 服务器开始以 50 毫秒的间隔发送消息。这些消息非常大(每个大约 500 KB)。

当我尝试将消息从浏览器发送回服务器时,客户端只是停止接收消息。什么都没有发生,甚至没有调用 WebSockets API 的 onclose、onerror 回调(在客户端和服务器端)。我在 chrome 开发工具中检查了网络,没有任何异常发生;我只是停止接收来自服务器的消息......

你能告诉我问题可能是什么吗?

4

2 回答 2

2

The problem is because the output stream of the server blocks.

Usually you can fix it by doing the output in separate thread.

于 2013-01-15T21:03:43.327 回答
2

我有类似的问题,并在几天前解决了它。只需将来自服务器的流放在不同的线程中即可。这将解决所有问题。

于 2012-08-12T09:46:44.077 回答