DesarrolloLibre

Desarrollo Web, Android, juegos y mucho más

Categorias
18-02-2016

Hace poco mostramos cómo acortar nuestros enlaces de manera automática con adf.ly mediante un sencillo script de PHP que realiza una petición con curl; ahora explicaremos básicamente el mismo concepto pero con otra alternativa para acortar los enlaces conocida como shortes.sh.

curl: Es una herramienta para la transferencia de archivos mediante una URL compatible con múltiples protocolos como HTTP que es el que nos interesa en este caso.

Wikipedia: cURL

Registrarnos en la página de shorte.st

Como todo servicio que deseemos emplear por primera vez, requiere que nos registremos lo cual podemos hacer desde el siguiente enlace: shorte.st y presionamos sobre el botón "Join":

shorte.st registrar

Previamente registrado y autenticado procedemos a dar clic en "Tools" > "Developers API" y veremos una pantalla como la siguiente:

shorte.st Developers API

A diferencia de adf.ly que ofrecía una interfaz cargado y poco legible, aquí nos muestran los datos que vamos a emplear de una manera más clara; en espedifico nos interesa el token de la API la cual esta asociada a nuestra cuenta.

Armando el curl y obteniendo el enlace acortado con PHP

Tomado lo anterior en consideración, ahora creemos el curl para realizar una petición personalizada a shorte.st y luego esta nos retribuirá el enlace acortado; para eso empleamos el siguiente código:

    static private function shortest($url, $key) {
        $ch = curl_init($url);
        curl_setopt($ch, CURLOPT_HTTPHEADER, ['public-api-token: '.$key]);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array("urlToShorten" => $url)));
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 2);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_URL, 'https://api.shorte.st/v1/data/url');
        $ret = curl_exec($ch);
        if ($ret === false) {
            return $url;
        }
        curl_close($ch);
        $json = json_decode($ret, true);
        if ($json['status'] == "ok") {
            return $json['shortenedUrl'];
        } else {
            return $url;
        }
    }

En donde:

Finalmente obteniendo como resultado una URL con el siguiente aspecto:

http://shorte.st/1W8poT
Los únicos valores que debes proveer son key que lo puedes obtener desde la página de shorte.st (el Token de la API) y la URL de la página que sees recortar; como ves es muy sencillo emplear la API de shorte.st para acortar nuestros enlaces y generar un ingreso extra.

Fuente del ejemplo

Cabe resaltar que el ejemplo lo tomé desde un foro oficial de la gente de shorte.sh; además el ejemplo que vimos tanto en esta entrada como en la anterior (con adf.ly) es solo una forma de emplear su API; es decir, con cualquier tecnología que permita emplear el HTTP (Java, C#, Android ...) podríamos crear nuestra petición personalizada HTTP y obtener la URL acortada al realizar la petición.


Publicidad

Give me for a beer!

Algunos recursos que te pueden interesar

API REST en CodeIgniter

API REST en CodeIgniter

TCPDF: clase Oper Source para generar PDF con PHP

TCPDF: clase Oper Source para generar PDF con PHP

Algunos artículos que te pueden interesar

Creando un proyecto con Api.ai (parte 1)

Creando un proyecto con Api.ai (parte 1)

En esta entrada veremos como crear los agents, entities y intents desde el portal de api.ai para poder emplearlos desde nuestras aplicaciones.

Andrés Cruz 05-03-2015

La API Battery (Batería) en HTML5

La API Battery (Batería) en HTML5

La API de la batería en JavaScript provee información sobre el nivel de carga actual del dispositivo.

Andrés Cruz 17-11-2014

Booleanos en PHP

Booleanos en PHP

Este es el tipo de dato más simple. Un boolean expresa un valor de verdad.

Andrés Cruz 01-08-2013