«

»

jun
22
2009

Consulta Web con Java usando un Proxy con Autenticación

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();
      }
   }
}

Enlace permanente a este artículo: http://blog.jromay.es/2009/06/22/consulta-web-con-java-usando-un-proxy-con-autenticacion/

Deja un comentario

Tu email nunca se publicará.

Puedes utilizar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>