2010-04-15

Ejemplo de como acceso al API de bit.ly desde PHP

En este caso se trata de hacer un script PHP que se encargue de conectarse con el API, para enviar una URL larga y obtener una corta. Como veremos en este artículo, se trata de una tarea bastante sencilla, aunque requiere de varios pasos, que listamos a continuación.
  1. Componer una URL para la consulta en el API de bit.ly
  2. Acceder a esa URL por medio de PHP y recibir la información en formato JSON
  3. Convertir el JSON resultante en un array asociativo de PHP
  4. Acceder a los datos que necesitemos, es decir a la URL corta generada por bit.ly
Nota: La mayoría de las acciones que vamos a realizar las hemos trabajado anteriormente en distintos artículos de DesarrolloWeb.com, como podrían ser Lectura de texto de una URL o Consumo de JSON desde PHP.

El código del ejemplo básico de uso del API de bit.ly desde PHP que hemos creado es el siguiente:

//unas variables de configuración
$servicio_web = "http://api.bit.ly/";
$version_API = "version=2.0.1";
$usuario = "login=usuario"; //sustituye por tu usuario del API
$llave = "apiKey=R_000000"; //sustituye por tu clave del API

//la URL que quiero acortar
$URL_larga = "http://www.desarrolloweb.com/manuales/";

//codifico en formato de URL la URL larga
$query_URL = "&longUrl=" . urlencode("http://www.desarrolloweb.com/manuales/");

//genero la URL para consultar en el API de bit.ly
$URL_consulta_API = $servicio_web . "shorten?" . $version_API . "&" . $query_URL . "&" . $usuario . "&" . $llave;

//leo lo que me devuelve el API al hacer esa consulta, que estará en formato JSON
$respuesta_API = file_get_contents($URL_consulta_API);

//ahora tengo que consumir ese JSON para convertirlo en una estructura de datos accesible desde PHP
$respuesta_API = json_decode($respuesta_API, true);
//el true anterior hace que json_decode me devuelva sea un array asociativo.

//ahora podríamos mostar el contenido completo de la respuesta.
echo "

";
var_dump($respuesta_API);
echo "
";

//compruebo si hubo algún problema
if($respuesta_API["errorMessage"]==""){
//Todo bien, pues no hay errores
//muestro la URL corta generada por el API
echo $respuesta_API["results"][$URL_larga]["shortUrl"];
}else{
echo "Hubo un error";
}

Con esto tenemos listo un ejemplo de uso del API, que esperamos se haya podido entender a través de los comentarios. Recuerda sustituir por tus propios datos, tanto el usuario y clave del API como la URL que quieras acortar con bit.ly.

Como se ha podido comprobar, la tarea no es nada complicada, aunque todavía puede ser más fácil, como veremos en el siguiente artículo, en el que explicaremos y ofreceremos ejemplos sobre una clase PHP, de programación orientada a objetos, que existe para acceder al API de bit.ly de una manera más cómoda.


Fuente: desarrolloweb.com

No hay comentarios: