Definitivamente si eres usuario de Linux conoces entonces las increíbles capacidades de la terminal, de hecho, al igual que en Windows puedes hacerlo todo desde ahí. La realidad es que aunque las interfaces gráficas son mucho mejores y aceleran nuestra productividad sin duda en las distribuciones de Linux la terminal es sensual, atractiva y más aún, una forma de status, entre usuarios de Linux he visto incluso a quienes dicen que si no sabes usarla no eres exactamente un usuario de este kernel.
Al fin, lo que interesa es aprender más y si eres linuxero definitivamente te interesará saber hacer esto.
¿Qué es CURL?
CURL es un cliente utilizado para realizar transacciones a un servidor usando cualquiera de los protocolos soportados (HTTP, HTTPS, FTP, TELNET, LDAP, etc.), para esta ocasión lo usaremos para establecer consultas a un mobile service utilizando su API REST.
Para instalar Curl solo debes ingresar un solo comando.
sudo apt-get install php5-curl
Una vez que lo hayas hecho, entonces podemos comenzar a trabajar pero antes hablemos un poco de que es lo que sucede del lado de Azure.
¿Cómo funciona la API REST de los servicios de Azure?
Cada vez que haces un nuevo servicio móvil en automático ya esta generada la API REST que vamos a utilizar, es una especie de serivico adicional. Te recomiendo ver este artículo antes de continuar, una vez que conozcas un poco de esto, podrás entender mejor todo pues los encabezados son necesarios en todo esto.
Cuando CURL ya esté instalado
Abre tu terminal y comienza por escribir la primera secuencia, invocar a tu aplicación.
A partir de ahora ya debes comenzar a establecer ciertos parámetros. La siguiente orden te permitirá establecer una consulta GET con CURL.
curl -v -X GET -H Content-Type:application/json -H X-ZUMO-APPLICATION:<nombre_llaves_servicio_movil> https://<nombre_servicio>.azure-mobile.net/tables/<nombre_tabla>
Al hacerlo, el resultado será el siguiente en tu terminal.
Las líneas con el signo «mayor que» indican que la información fue enviada, las líneas con el signo «menor que» indican que la información ha sido recibida, todo lo que recibes al inicio son los encabezados de respuesta para que al final puedas ver en formato JSON el resultado de la consulta obtenida.
Las siguientes operaciones
Para las siguientes operaciones, solo debes modificar cierta sintaxis y agregar nuevos elementos como parámetros, basándome en el mismo ejemplo de la tabla anterior.
POST
curl -v -X POST -H Content-Type:application/json \
-H X-ZUMO-APPLICATION:<llave_mobile_service> \
-d ‘{«Nombre»: «Foco1», «Valor»:true}’ \
http://<nombre_servicio>.azure-mobile.net/tables/<nombre_tabla>
La diagonal inversa al final de cada línea solo representa la continuación en el renglón siguiente del comando, es mucho más cómodo hacerlo así.
UPDATE
curl -v -X PATCH -H Content-Type:application/json \
-H X-ZUMO-APPLICATION:<llave_mobile_service> \
-d ‘{«Valor»: false}’ \
https://<nombre_servicio>.azure-mobile.net/tables/<nombre_tabla>/<identificador_registro>
DELETE
curl -v -X DELETE -H Content-Type:application/json \
-H X-ZUMO-APPLICATION:<llave_mobile_service> \
https://<nombre_servicio>.azure-mobile.net/tables/<nombre_tabla>/<identificador_registro>
Así es como puedes aprovechar una de las más grandes ventajas de los servicios móviles de Azure y como puedes utilizar una herramienta sumamente poderosa desde tu terminal en Linux ya sea para entornos de prueba o en modo productivo, como quiera que sea definitivamente debes agregar esto a tu arsenal de herramientas a utilizar.