2. cURL y su sintaxis URL, pero a lo griego

Estimado visitante, me gusta compartir contigo este proceso de aprendizaje de CakePHP y que no le des demasiada importancia a mis meteduras de pata. Ya sabes que no doy lecciones de nada y que sólo expongo mis problemas técnicos -por llamarlo de alguna forma-, humildes reflexiones y pensamientos. Para tí, conocedor de todo esto, hoy me meto en un terreno bastante desconocido por mí: la lingüística. Si conoces este tema y lees este post, siéntete libre de ampliarlo y corregir lo que creas conveniente.

Vayamos al grano. En algún momento tuve problemas para utilizar la clase Phoogle en mi servidor compartido porque su php.ini tiene deshabilitada la directiva de configuración allow_url_fopen y no puedo utilizar la función file_get_contents(). Pues bien, navegando por Internet descubrí este recurso que explica exactamente cómo se resuelve este problema: para que Phoogle funcione en un PHP con la directiva allow_url_fopen en off hay que cambiar

 

$addressData = file_get_contents($apiURL.urlencode($address));

por estas instrucciones:


      $ch = curl_init();

      $timeout = 0; // set to zero for no timeout

      curl_setopt($ch, CURLOPT_URL, $apiURL.urlencode($address));

      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

      curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);

      $addressData = curl_exec($ch);

      curl_close($ch);

Por otra parte, aquí explican que hay muchos servidores que deshabilitan la opción allow_url_fopen para que los programadores no puedan abrir, incluir o utilizar archivos remotos utilizando un URL. Sin embargo, existe una alternativa: la librería cURL.

Otra persona hubiera dedicado su tiempo a ver cómo funciona esta librería, o cómo está programada; a mí me hipnotizó la definición que leí en su sitio oficial, “cURL es una herramienta de la línea de comandos que sirve para transferir archivos con sintaxis URL”. Esta vez -a diferencia de otras- vi un significado nuevo en la palabra sintaxis, supongo que por el contexto y el momento. Sintaxis… 

sintaxis1

*He escrito la palabra en Word y creo que está bien así.

Los griegos dijeron sintaxis. Syn quiere decir junto y táxis significa colocar. Bueno, también dicen que syn es con y táxis es orden. En cualquier caso, la sintaxis es la subdisciplina de la lingüística que estudia los principios y las reglas que rigen el orden de las palabras en las oraciones. Ciertamente, la sintaxis ordena las palabras de una frase como mueclas burlescas. rostro, del son generalmente contorsiones Las para que se pueda construir algo con sentido para nosotros, Las muecas del rostro son, generalmente, contorsiones burlescas. ¿Te atreves con más?

Pero volvamos a la informática -y a la Wikipedia-. Todo esto me ha servido para recordar que los URL tienen que seguir una sintaxis:

esquema://autoridad/ruta?consulta#fragmento

Donde esquema es el protocolo que se utiliza para recuperar la información del recurso solicitado -http, https, ftp, etc-; autoridad es el nombre o dirección IP del servidor; ruta es una carpeta; y consulta son los parámetros de una consulta dinámica. En otras palabras, debemos seguir estas reglas para referirnos correctamente a un recurso particular de Internet; por ejemplo: https://tutorialcakephp.wordpress.com/2008/12/03/5-phoogle-file_get_contents-y-allow_url_fopen/.

En resumen, con cURL podemos obtener un recurso externo en un servidor que tenga deshabilitada la directiva allow_url_fopen, pero es necesario entender y respetar la sintaxis URL. La palabra sintaxis es un término lingüístico que también se utiliza en informática. La página principal del proyecto, http://curl.haxx.se/, explica cómo trabajar con cURL.

 

Anuncios

Una respuesta

  1. […] especificando los parámetros q, key y output. También vimos esto en 2. cURL y su sintaxis, pero a lo griego, cuando usábamos cURL para obtener la respuesta del servicio de […]

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: