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

La API de archivos en JavaScript - datos de los archivos

La API de archivos en JavaScript - datos de los archivos

Veremos cómo trabajar con parte de la API de archivos en JavaScript y obtener datos de archivos como la extensión, MIME, tamaño de los archivos que se encuentren cargados localmente a través del input type="file" y derivados.

Andrés Cruz 21-01-2016

Tipos de variables en PHP

Tipos de variables en PHP

En este artículo veremos como crear una variable en PHP, particularidades de las mismas y tipos de datos en PHP.

Andrés Cruz 27-07-2013

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