【发布时间】:2019-02-20 08:16:46
【问题描述】:
所以我刚刚阅读了this 的帖子,它说你需要像这样制作一个 SSL 套接字:
SocketFactory factory = SSLSocketFactory.getDefault();
Socket socket = factory.createSocket("computerName", 2282);
所以我认为这行不通,因为它看起来太简单了,但实际上并没有引发错误。它确实连接到了我的服务器,该服务器目前只是使用普通的套接字连接,但它从来没有显示它从它接收到数据,只是它连接了。以下是每个代码:
客户
SocketFactory factory = SSLSocketFactory.getDefault();
Socket socket = factory.createSocket("computerName", 2282);
DataOutputStream outputData = new DataOutputStream(socket.getOutputStream());
outputData.writeUTF("1"));
DataInputStream inputData = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
String returnData = inputData.readUTF();
服务器:
Socket socket = server.accept();
DataInputStream inputData = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
DataOutputStream outputData = new DataOutputStream(socket.getOutputStream());
String incomingData = inputData.readUTF();
System.out.println("Received: " + incomingData);
String[] receivedDataArray = incomingData.split("\\s+");
// "1" occurs when the client pings the server.
if (receivedDataArray[0].equals("1"))
outputData.writeUTF("1");
知道为什么会这样,我该如何解决?
【问题讨论】:
-
也许刷新 outputData?