Red de conocimiento informático - Material del sitio web - Cómo implementar un cliente HTTPS usando JAVA

Cómo implementar un cliente HTTPS usando JAVA

importar java.io.*;

importar java.net.*;

importar java.security.cert.CertificateException;

importar java.security.cert.X509Certificate;

importar javax.net.ssl.*;

clase pública TrustSSL {

clase estática privada TrustAnyTrustManager implementa X509TrustManager {

public void checkClientTrusted(X509Certificate[] chain, String authType)

lanza CertificateException {

}

public void checkServerTrusted(X509Certificate [] cadena, String authType)

lanza CertificateException {

}

public X509Certificate[] getAcceptedIssuers() {

devuelve nuevo X509Certificate [] {};

}

}

clase estática privada TrustAnyHostnameVerifier implementa HostnameVerifier {

verificación booleana pública (String hostname, SSLSession sesión) {

return true;

}

}

public static void main(String[] args) lanza una excepción {

Entrada de flujo = nulo;

Salida de flujo = nulo;

byte[] buffer = nuevo byte[4096];

Cadena str_return = "";

prueba {

SSLContext sc = SSLContext.getInstance("SSL");

sc.init(null, new TrustManager[] { new TrustAnyTrustManager() },

new java.security.SecureRandom());

consola URL = nueva URL(

"https://192.168. 1.188/test.php?username=test");

HttpsURLConnection conn = (HttpsURLConnection) consola

.openConnection();

conn.setSSL

SocketFactory(sc.getSocketFactory());

conn.setHostnameVerifier(new TrustAnyHostnameVerifier());

conn.connect();

InputStream es = conn .getInputStream();

DataInputStream indata = new DataInputStream(is);

String ret = "";

while (ret != null) {

ret = indata.readLine();

if (ret != null && !ret.trim().equals("")) {

str_return = str_return

+ new String(ret.getBytes("ISO-8859-1"), "GBK");

}

}

conn.disconnect();

} catch (ConnectException e) {

System.out.println("ConnectException");

Sistema .out.println(e);

throw e;

} catch (IOException e) {

System.out.println("IOException");

System.out.println(e);

throw e;

} finalmente {

prueba {

in.close();

} catch (Excepción e) {

}

prueba {

out.close( );

} catch (Excepción e) {

}

}

System.out.println(str_return);

}

}