Duda sobre Conexion mediante Https
Muy buenas tardes, discupen por la molestia, necesito ayuda en como conectarme a un servidor mediante Https.
He logrado comunicarme mediante HTTP pero no en HTTPS
les dejo el código que si funciona, navegando en internet encontré que que funciona agregando el código (comentado en el método), pero aún no
logro conectarme.
O hay otra forma de conectarse.
public static String ejemploMetodo() {
String cadenaProd = "";
try {
String solicitud = obtenerCadenaPeticion();
URL url = new URL(ruta);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
// Authenticator au = new Authenticator() {
//
// @Override
// protected PasswordAuthentication getPasswordAuthentication() {
// return new PasswordAuthentication("usuario", "clave".toCharArray());
// }
// };
// Authenticator.setDefault(au);
connection.setDoOutput(true);
connection.setRequestMethod("POST");
connection.connect();
PrintWriter out = new PrintWriter(connection.getOutputStream());
out.println(solicitud);
out.close();
String cadena = deStreamaCadena(connection.getInputStream());
return cadena;
} catch (java.net.UnknownHostException uke) {
return noServer;
} catch (IOException ioe) {
}
return cadenaProd;
}
- Inicie sesión o regístrese para enviar comentarios
URL
La cadena "ruta" con la que creas el URL comienza con
https://
? La conexión debe ser entonces una HttpsURLConnection, no HttpURLConnection.Cuando dices que no logras conectarte... qué error obtienes? se arroja una excepción? Estás cachando IOException pero no haces nada en ese bloque por lo que no sabes qué ocurrió. Imprime la excepción al menos para saber qué ocurrió, cuál es el error.
Si solamente estás cambiando http por https en el URL, te consta que el servidor al que te estás conectando tiene https habilitado? qué pasa si pones el URL con http en un navegador?
No hay suficiente información para ayudarte.
Aqui un ejemplo de
Aqui un ejemplo de http://www.devdaily.com/blog/post/java/simple-https-example
como menciona ezamudio hay que cambiar HttpURLConnection por HttpsURLConnection y el url debe de iniciar con https
import java.net.URL;
import java.io.*;
import javax.net.ssl.HttpsURLConnection;
public class JavaHttpsExample
{
public static void main(String[] args)
throws Exception
{
String httpsURL = "https://your.https.url.here/";
URL myurl = new URL(httpsURL);
HttpsURLConnection con = (HttpsURLConnection)myurl.openConnection();
InputStream ins = con.getInputStream();
InputStreamReader isr = new InputStreamReader(ins);
BufferedReader in = new BufferedReader(isr);
String inputLine;
while ((inputLine = in.readLine()) != null)
{
System.out.println(inputLine);
}
in.close();
}
}