将javascript WebSocket与Java服务器套接字连接

将javascript WebSocket与Java服务器套接字连接,javascript,java,websocket,serversocket,Javascript,Java,Websocket,Serversocket,我正在尝试将javascript与Java连接起来,但出现了一些错误: javascript端出现错误: WebSocket connection to 'wss://127.0.0.1:1234/' failed: WebSocket opening handshake timed out Java端的错误: java.io.EOFException at java.io.DataInputStream.readFully(DataInputStream.java:197) at java.

我正在尝试将javascript与Java连接起来,但出现了一些错误:

javascript端出现错误:

WebSocket connection to 'wss://127.0.0.1:1234/' failed: WebSocket opening handshake timed out
Java端的错误:

java.io.EOFException
at java.io.DataInputStream.readFully(DataInputStream.java:197)
at java.io.DataInputStream.readUTF(DataInputStream.java:609)
at java.io.DataInputStream.readUTF(DataInputStream.java:564)
at networkingtest.Server.start(Server.java:29)
at networkingtest.NetworkingTest.main(NetworkingTest.java:9)
以下是我的javascript代码:

var connection;

function init() {
    connection = new WebSocket('wss://127.0.0.1:1234/');
    connection.onopen = function () {
        connection.send('Ping');
    };
}
以下是Java代码:

package networkingtest;

import java.io.*;
import java.net.*;

public class Server {

    public ServerSocket ss;
    public Socket s;
    public int port;

    public Server(int p) {
        port = p;
    }

    public void start() {
        try {
            ss = new ServerSocket(port);
            s = ss.accept();
            DataInputStream di = new DataInputStream(s.getInputStream());
            while (true) {
                if (s.isConnected()) {
                    System.out.println(di.readUTF());
                } else {
                    System.exit(0);
                }
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

我看不出我做错了什么。这是Java方面的错误还是javascript方面的错误?

webSocket不是简单的TCP套接字。它具有完整的连接方案、安全方案和数据格式。因此,webSocket客户端只能与webSocket服务器通信。如果尝试将webSocket客户端连接到非webSocket服务器,客户端将看不到正确的响应,并将立即断开连接。您在客户端看到的错误:

WebSocket opening handshake timed out
是因为客户端在第一次连接时没有看到它期望从服务器得到的响应

您可以将webSocket库与Java服务器一起使用,在Java代码中实现webSocket服务器