【发布时间】:2021-10-17 12:48:00
【问题描述】:
所以我有这个 java websocket 服务器,它在一个单独的机器上,没有防火墙和开放的端口:
ServerSocket serverSocket = new ServerSocket(23547);
Thread serverThread = new Thread(() -> {
while(true) {
try {
Socket connection = serverSocket.accept();
try (
BufferedReader serverReader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
Writer serverWriter = new BufferedWriter(new OutputStreamWriter(connection.getOutputStream()));
) {
serverWriter.write("hello, " + serverReader.readLine() + "\n");
serverWriter.flush();
}
} catch (IOException e) {
e.printStackTrace();
} catch (Throwable t) {
t.printStackTrace();
throw t;
}
}
});
serverThread.setDaemon(true);
serverThread.start();
当尝试使用 javascript 侦听时,我立即收到“与 'ws://xxx.xxx.xxx.xx:23547/' 的 WebSocket 连接失败”,而在尝试访问其他随机端口时需要 5 /8 秒前抛出错误。
用于连接 WS 的 JavaScript 代码:
var exampleSocket = new WebSocket("ws://xxx.xxx.xxx.xx:23547");
谢谢!
【问题讨论】:
标签: javascript java websocket