La API REST es el siguiente gran paso en desarrollo abonado a toda la comunidad de WordPress. Desde su creación, ha ido ganando popularidad, y cada vez más desarrolladores están trabajando o interactuando con esta.
Por supuesto, la API REST viene con numerosos beneficios, como la capacidad de interactuar con plataformas externas y aplicaciones de terceros. Si tienes una aplicación codificada en Ruby, Python, Perl, C# o cualquier otra y desea interactuar con un sitio de WordPress basado en PHP ¡La API REST es el camino para conseguirlo!
Este artículo de introducción es solo uno de muchos de los cuales deseo explicarte como comenzar con la API REST de WordPress. Aprenderemos los conceptos básicos, así como los detalles avanzados de esta nueva API para que puedas utilizarla en tus proyectos.
Desde mediados de 2015, la comunidad de WordPress ha estado hablando de la llegada de REST API al núcleo de WordPress. Este es definitivamente un desarrollo innovador y eventualmente llevará a cosas más grandes y mejores que nosotros como desarrolladores podemos lograr usando WordPress.
El WordPress REST API ha sido incluido en WordPress de manera lenta por medio de varias faces, las cuales están divididas en dos versiones: WordPress 4.4 y WordPress 4.5; no se ha agregado todavía de forma nativa al núcleo de WordPress, pero se está agregando parcialmente en una fase de manera responsable y definitiva por ahora puedes hacer uso de ella por medio del plugin que encontrarás en su página principal. Evidentemente, el REST API de WordPress (también llamado JSON REST API por algunos usuarios) jugará un papel crucial hacia el futuro del desarrollo de WordPress, ya que WordPress es el sistema de gestión de contenido más popular del mundo (CMS), contribuirá al crecimiento del desarrollo web en general.
Luego de haber hablado un poco definamos entonces que es REST API y todas las noticias que hemos escuchado desde su creación y ademas de esto por que y cuando debemos de utilizarlo nosotros los desarrolladores?, Antes de comenzar con la codificación y el desarrollo, en este artículo presentaré un poco de sus alcances y características y lo que puede hacer para el desarrollo de WordPress.
El término API
El término API, es obvio que es sólo un acrónimo. Las tres letras API representan la Interfaz de Programación de Aplicaciones.
En palabras mas sencillas, una interfaz de programación de aplicaciones permite establecer una conexión o enlace entre dos tipos diferentes de software. Por ejemplo, tu computador tiene un puerto USB, que es esencialmente utilizado para conectar dispositivos de almacenamiento USB como unidades flash o discos duros USB. Sin embargo, puede conectar prácticamente cualquier tipo de hardware USB a los port-printers, smartphones, tablets, etc. Como tal, considere el puerto USB como una API para permitirle conectar diferentes tipos de dispositivos a su computadora y permitir que su computadora interactúe con los dispositivos correspondientes en consecuencia. Al igual que un puerto USB facilita el intercambio de datos entre dos dispositivos físicos, una API facilita el intercambio de datos entre dos tipos diferentes de software.
Las APIs han estado alrededor de nosotros durante bastante tiempo y los desarrolladores y programadores los utilizan diariamente. ¿Has utilizado alguna vez una aplicación de terceros para publicar en tu feed de redes sociales? ¿Es decir, usando un plugin en WordPress para tweetear sobre tu nueva entrada de blog como y cuando lo publique? Sí, eso es posible por medio de API. De hecho, muchos juegos y aplicaciones que dependen de los inicios de sesión sociales a través de Facebook o cuentas de Google utilizan API para interactuar con los servicios de redes sociales afectados.
Por lo tanto, la conclusión es que las API permiten a nosotros los desarrolladores utilizar contenidos y características de una aplicación, servicio o plataforma diferente en un servicio, plataforma o aplicación propia, de manera segura y limitada.
El término REST
Al igual que API, REST es también un acrónimo, y aveces se escribe como ReST. significa Representational State Transfer o (Transferencia de Estado Representacional) y se refiere a un estilo dado de API-building. Casi todos los principales servicios web, como Google, Facebook y Twitter, dependen de REST para sus APIs simplemente porque REST está basado en HTTP (que es el protocolo que potencia casi todas las conexiones a Internet). Además, REST es ligero y flexible y puede manejar grandes volúmenes de actividad con facilidad.
Por lo tanto, REST en sí mismo no es una nueva tendencia y se ha utilizado en la web para los servicios de gran poder durante bastante tiempo. Por lo tanto, para los usuarios de WordPress, aprovechar la potencia de la API REST significa que sus aplicaciones pueden interactuar con una carga de servicios desde WordPress, con la ayuda de la API REST.
La idea importante detrás de REST es que en lugar de depender de servicios web complejos como SOAP o XML-RPC, se utiliza un simple protocolo HTTP para realizar conexiones. Por lo tanto, todas las aplicaciones RESTful hacen uso de solicitudes HTTP para manejar las cuatro operaciones CRUD, crear, leer, actualizar y eliminar. Esto hace que REST sea extremadamente versátil, y cualquiera puede implementar su propia versión de REST con funciones de biblioteca estándar usando el lenguaje de programación de su elección, como Python o PHP.
Otra ventaja importante de utilizar REST es que es independiente de la plataforma, por lo que se puede utilizar en situaciones en las que el servidor puede ser Linux, pero el cliente puede utilizar Windows y así sucesivamente. Dado que es estándar e independiente del lenguaje, una solicitud RESTful lleva consigo toda la información que podría ser necesaria para su ejecución o finalización.
Sin embargo, tal simplicidad y versatilidad no significa que las aplicaciones RESTful sean débiles o inseguras en cualquier aspecto de su utilización. REST es muy potente y puede manejar prácticamente todas las solicitudes que pueda esperarse de cualquiera de sus contrapartes.
Por último, es importante señalar que, al igual que los otros servicios web como SOAP o RPC, REST tampoco ofrece cifrado o funciones de gestión de sesiones propias. Pero, se pueden crear estas características en la parte superior de HTTP en cuestión de minutos. Por ejemplo, por seguridad, puede confiar en nombres de usuario, contraseñas y tokens de autenticación, mientras que para el cifrado, REST puede utilizarse encima de HTTPS (HTTP seguro). Las aplicaciones RESTful también pueden funcionar en presencia de firewalls.
Veamos una de las aplicaciones RESTful de mas utilización.
Uno de los ejemplos mas comunes es Twitter que ha tenido una API REST desde sus inicios, y para todos los propósitos prácticos, sigue siendo la API más común, siendo utilizada por los desarrolladores que crean aplicaciones y herramientas que interactuan con Twitter.
Podemos encontrar más en: https://developer.twitter.com/en/docs
El término JSON
JSON es un acrónimo de JavaScript Object Notation. Como su nombre indica, es una forma de formato de intercambio de datos que se basa en JavaScript. Con más y más bibliotecas de JavaScript y servicios, JSON es un formato que está aumentando en su popularidad en la web.
La mejor parte de los JSON es que es a la vez máquina y humano-amistoso(código amigable) en términos de lectura y comprensión. Como desarrollador humano, se puede leer y escribir tanto como trabajaría con cualquier otro lenguaje de programación, mientras que las computadoras también pueden analizar y procesar fácilmente. De hecho, muchos lenguajes de programación populares ofrecen sus propios intérpretes que pueden analizar la salida a JSON y viceversa. Esto hace que JSON sea ideal para la aplicación de interacción multiplataforma A codificada en un lenguaje de programación y la aplicación B codificada en otro lenguaje de programación puede interactuar convirtiendo sus estructuras de datos en JSON y viceversa.
Esta característica del formato JSON lo ha convertido en un conector universal en la web. Para los usuarios de WordPress, JSON también se puede utilizar para reemplazar el estándar XML-RPC casi obsoleto.
Ahora que somos conscientes de lo que los términos API, REST y JSON representan, volvamos a REST API y empezamos por aprender más sobre está en sí misma. A partir de entonces, nos centraremos en lo que puede hacer para nosotros los desarrolladores de WordPress y a continuación empezar a usarla.
En el siguiente artículo profundizaremos en como utilizar la REST API con WordPress usando ejemplos prácticos, no olvides comentar si este primer paso de introducción te ha gustado. 🔗