Algunas veces no volvemos locos buscando por toda la API cual es el método que acepta un tipo de parámetro que nos haría falta para nuestros propósitos, pero esa no es la forma de utilizar dicho tipo.
Este es el caso de las conexiones de red cuando hay un proxy de por medio que además necesita autenticación de usuario.
Veremos la utilización de la clase Autenticator de Java con un ejemplo de petición web.
Ni que decir tiene que la notación en rojo deben ser nuestros propios valores.
package es.jromay.web;
import java.io.*;
import java.net.*;
import java.util.*;
public class PeticionWebProxy {
public static void main( String[] args ) {
String peticion = “blog.jromay.es“;
// SI SE NECESITA USUARIO
Authenticator.setDefault(new Authenticator() {
@Override
protected PasswordAuthentication getPasswordAuthentication() {
return new PasswordAuthentication(“[USUARIO_PROXY]“, “[CLAVE_PROXY]“.toCharArray());
}
});
// FIN si se necesita usuario
Proxy p = new Proxy(Proxy.Type.HTTP, new InetSocketAddress(“[EQUIPO_PROXY]“,[PUERTO_PROXY]));
try {
URL url = new URL(“http://” + peticion);
HttpURLConnection conexion = (HttpURLConnection) url.openConnection(p);
connection.connect();
BufferedReader entrada = new BufferedReader(new InputStreamReader( conexion.getInputStream() ) );
String linea = null;
while( (linea = entrada.readLine()) != null ){
System.out.println( linea );
}
conexion.disconnect();
}
catch( Exception e ) {
e.printStackTrace();
}
}
}
Comentarios recientes