我正在用 java 实现一个客户端,它通过 TCP 和 SSL 与 EPP 服务器通信。
我需要通过 SSL 向服务器发送一些 xml-s 并读取一些 xml 响应。我没有客户证书,也没有客户证书。我只是需要能够向该服务器发送请求并读取响应。我对这个话题很陌生。
我的代码是这样的:
SSLSocketFactory sslsocketfactory = (SSLSocketFactory) SSLSocketFactory.getDefault();
SSLSocket sslsocket = (SSLSocket) sslsocketfactory.createSocket("server.epp.si", 65000);
DataOutputStream outToServerSSL = new DataOutputStream(sslsocket.getOutputStream());
BufferedReader inFromServerSSL = new BufferedReader(new InputStreamReader(sslsocket.getInputStream()));
outToServerSSL.write(somXML.getBytes());
inFromServerSSL.readLine();
它不依赖于我在 xml 中放入的字符串,我总是得到相同的 xml 响应。
现在我想知道 SSL hanshake 是否正常。如何检查连接是否已成功建立以及接收方是否已准备好接收数据。这样我就排除了连接问题本身。