Obtener Foto de Usuario desde Gravatar con Java

Obtener Foto de Usuario desde Gravatar con Java

En este Articulo desarrollaremos una sencilla aplicacion de Ejemplo para aprender a obtener Imagenes de Perfil de cualquier Usuario registrado en Gravatar por medio de su Correo Electronico, esto es util si estas desarrollando una aplicacion en la cual quieres aprovechar este sistema, simplemente por curiosidad o cualquier otra vale 🙂 Para Obtener las Imagenes de Perfil obtendremos el Hash asociado a cada Correo Electronico y construiremos la URL para descargar las Imagenes y Utilizarlas a placer, Veamo como…

Requerimientos

  • Gravatar
  • Entorno Configurado para Programar en Java

Situacion 😕

Estamos desarrollando una aplicacion con Java en la que necesitamos obtener la Foto de Perfil de un Usuario por medio de su correo electronico registrado en Gravatar, Tenemos una cuenta en Gravatar ( create una si no la tienes aun 😀 ) e iniciamos sesion

Obtener Foto de Usuario desde Gravatar con Java 1
Vamos a «Mis Gravatas»

Obtener Foto de Usuario desde Gravatar con Java 2
y luego a «Enlace» en nuestra imagen principal

Obtener Foto de Usuario desde Gravatar con Java 3
Observamos que para adquirir la imagen de una cuenta de un Usuario necesitamos crear un Enlace de tipo


¿Sabías que?

¿Necesitas aprender algo nuevo ? Ve a Udemy, busca el tema del que quieres aprender, selecciona el curso para ti y continua con tu aprendizaje.

Udemy


www.gravatar.com/avatar/b37449eae2e2ffa87b75e02f665944b8.png

Donde b37449eae2e2ffa87b75e02f665944b8 viene siendo un hash generado por gravatar.

Asi que nuestra aplicacion en Java tiene que ser capaz de obtener ese hash de acuerdo a la direccion de Email de la cual queremos obtener la imagen de Usuario, tambien es necesario construir esa url y obtener la imagen la cual colocaremos en una etiqueta JLabel, quedo claro? 😯 vamos que es facil!! 😉

Obtener el Hash de Gravatar? 😯

Para adquirir el Hash utilizaremos la siguiente clase de Ayuda


public class MD5Util {
    public static String hex(byte[] array) {
      StringBuffer sb = new StringBuffer();
      for (int i = 0; i < array.length; ++i) {
      sb.append(Integer.toHexString((array[i]
          & 0xFF) | 0x100).substring(1,3));        
      }
      return sb.toString();
  }
  public static String md5Hex (String message) {
      try {
      MessageDigest md = 
          MessageDigest.getInstance("MD5");
      return hex (md.digest(message.getBytes("CP1252")));
      } catch (NoSuchAlgorithmException e) {
      } catch (UnsupportedEncodingException e) {
      }
      return null;
  }
}

y desde otra clase ( o la misma, como quieras 😛 ) mandamos llamar el procedimiento pasando como parametro una cadena String que sera el Email de la persona registrada en gravatar de la cual queremos obtener su Imagen.


String email = jTextField1.getText();
String hash = MD5Util.md5Hex(email);
[note]Nota que jTextField1 es eso, una campo de Texto donde el usuario escribira la direccion de Email.
[/note]

Ahora tendremos nuestro hash en la variable hash 😉

Construir la Url y Obtener la Imagen 😛

Contruimos la URL de la Imagen mediante la siguientes lineas:


String ruta = "http://www.gravatar.com/avatar/"+hash+".png";
URL url = new URL(ruta);  

Y obtenemos la imagen mediante ImageIO.read asi:


imagen = ImageIO.read(url);

Ahora simplemente la utilizamos como queramos, yo la he puesto en una etiqueta JLabel asi:


Image escalada = imagen.getScaledInstance(jLabel1.getWidth(), jLabel1.getHeight(), Image.SCALE_SMOOTH);
jLabel1.setIcon(new ImageIcon(escalada));

Ahora crucemos los dedos ✌ y probamos 😛

Resultado 😎

Al ejecutarlo ingresamos un correro electronico y obtenemos la imagen de perfil de ese Usuario en Gravatar!! Ahora podemos utilizarlas en nuestras Aplicaciones 😮

Obtener Foto de Usuario desde Gravatar con Java resultado

Obtener Foto de Usuario desde Gravatar con Java

Clic para valorar esta información
[Total: 0 Promedio: 0]