TigerZF
🌐Español

64.27. Zend_Service_ShortUrl

64.27.1. Resumen

Los acortadores de URL han explotado en popularidad en los últimos años, en gran parte debido a la naturaleza social de la web y al deseo de compartir enlaces. Zend_Service_ShortUrl proporciona una API para acceder a varios servicios distintos de acortamiento de URL, con la capacidad tanto de crear URLs cortas como de recuperar la URL original.

Los adaptadores proporcionados incluyen:

  • Zend_Service_ShortUrl_JdemCz, que accede al servicio jdem.cz.

  • Zend_Service_ShortUrl_TinyUrlCom, que accede al servicio tinyurl.com.

  • Zend_Service_ShortUrl_MetamarkNet, que accede al servicio metamark.net.

  • Zend_Service_ShortUrl_IsGd, que accede al servicio is.gd.

  • Zend_Service_ShortUrl_BitLy, que accede al servicio bit.ly.

64.27.2. Inicio rápido

Utilizar uno de los servicios de acortamiento de URL es sencillo. Cada acortador de URL sigue una interfaz simple que define dos métodos: shorten() y unshorten(). Instancie la clase y llame al método correspondiente.

$tinyurl = new Zend_Service_ShortUrl_TinyUrlCom();

// Shorten a URL:
$short = $tinyurl->shorten('http://framework.zend.com/'); // http://tinyurl.com/rxtuq

// Inflate or unshorten a short URL:
$long  = $tinyurl->unshorten('http://tinyurl.com/rxtuq'); // http://framework.zend.com/

64.27.3. Métodos disponibles

shorten($url);

Toma la $url proporcionada y la pasa al servicio con el fin de obtener una URL acortada.

Si la $url proporcionada no es válida, se lanzará una excepción.

unshorten($shortenedUrl);

Toma la $shortenedUrl proporcionada y la pasa al servicio con el fin de obtener la URL original.

Si la $shortenedUrl proporcionada no es válida, se lanzará una excepción.

setHttpClient(Zend_Http_Client $httpClient);

Use este método para establecer el cliente HTTP utilizado para comunicarse con el servicio.

getHttpClient();

Use este método para acceder al cliente HTTP asociado al servicio. Por defecto, esto cargará de forma diferida (lazy-load) una instancia de Zend_Http_Client si aún no hay ningún cliente asociado.

64.27.4. Métodos adicionales de Bit.ly

La API de bitly requiere que las credenciales de autenticación se proporcionen como argumentos de consulta. Para comenzar, necesitará una cuenta de usuario bitly gratuita y una apiKey. Regístrese en: http://bitly.com/a/sign_up

bitly actualmente también admite el borrador de especificación OAuth 2. Puede proporcionar un token de acceso OAuth generado a Zend_Service_ShortUrl_BitLy usando setOAuthAccessToken o como argumento del constructor.

$bitly = new Zend_Service_ShortUrl_BitLy('username','apiKey');

// Shorten a URL:
$short = $bitly->shorten('http://framework.zend.com/'); // http://bit.ly/15Oe0

// Inflate or unshorten a short URL:
$long  = $bitly->unshorten('http://bit.ly/15Oe0'); // http://framework.zend.com/
setApiLogin($login, $apiKey);

Toma el nombre de usuario $login y la $apiKey requeridos y los pasa al servicio.

setOAuthAccessToken($accessToken);

Utiliza el $accessToken de OAuth para la autenticación