为了账号安全,请及时绑定邮箱和手机立即绑定

如何从 JS WebSocket 向 Java Server 发送和接收消息?

如何从 JS WebSocket 向 Java Server 发送和接收消息?

HUX布斯 2023-06-15 17:41:10
我知道如何为 Java 客户端编写 Java 服务器,但我是从 Js 编码开始的,我绝对不了解其套接字的工作方式。我正在尝试在 Java 中使用普通的 TCP 服务器,但我只是从 Js 收到部分消息头,而不是消息。我的代码可能只是错误的,所以如果有人只是给我发送一个带有 Java 服务器和一些随机字符串事务的 JS 客户端示例,我会很高兴。我附上我的代码只是为了让你受苦:)var socket = new WebSocket("ws://localhost:8080"); socket.send("hola");    public static void main(String [] args){        try {            ServerSocket serverSocket= new ServerSocket(8080);            ClientHandler clientHandler;            while (true){                Socket socket= serverSocket.accept();                clientHandler= new ClientHandler(socket);                clientHandler.start();            }        } catch (IOException e) {            e.printStackTrace();        }    }    private static class ClientHandler extends Thread{        Socket socket; InputStream in; OutputStream out; BufferedInputStream bufferedInputStream;        public ClientHandler(Socket socket){            try {                this.socket= socket;                in= socket.getInputStream();                out= socket.getOutputStream();                bufferedInputStream= new BufferedInputStream(in);            } catch (IOException e) {                e.printStackTrace();            }        }        @Override        public void run(){            System.out.println(socket.getInetAddress()+"Connected successfully");            try {                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(in));                StringBuilder stringBuilder = new StringBuilder();                stringBuilder.append(bufferedReader.readLine());                System.out.println(stringBuilder.toString());            } catch (IOException e) {                e.printStackTrace();            }        }    }}```    
查看完整描述

1 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

您的代码中有很多问题。无论如何,您当前的问题是服务器实现了TCP服务器,但客户端使用WebSocket ,这是TCP之上的协议,因此您也必须处理该协议。您必须自己实现 http web 套接字协议或使用Netty或其他实现它的库。



查看完整回答
反对 回复 2023-06-15
  • 1 回答
  • 0 关注
  • 122 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信