LA ARQUITECTURA MÁS UTILIZADA: API REST

Olvídate de escribir todo el código desde cero.  Descubre aquí como puedes implementar APIRESTfull en el desarrollo de tus aplicaciones para mejorarlas.

Introducción – API REST ¿qué es y para qué sirve?

Actualmente REST es una de las arquitecturas lógicas más utilizadas para la construcción de APIs diseñadas para trabajar sobre un esquema cliente-servidor.

Para entender cómo funciona API REST debemos entender primero que es una API.

La interfaz de programación de aplicaciones o también conocida como API es un conjunto de reglas que va a definir cómo se comunican las aplicaciones entre sí de forma sencilla. Gracias a la implementación de APIs podremos aprovechar los desarrollos ya construidos en otros programas y evitar así tener que crear todo un sistema desde cero.  

El acónimo REST (Representational State Transfer o en español Transferencias de Estado Representacional)es un conjunto de reglas sobre como utilizar HTTP que buscan facilitar el intercambio de recursos para mejorar las comunicaciones cliente-servidor.

Cuando integramos el estilo REST al desarrollo de nuestras APIs obtenemos lo que se conoce como REST full o API RESTfull, es decir una API construida utilizando la lógica de REST que funciona estrictamente bajo una arquitectura cliente-servidor.

A través de la implementación de RESTfull API podremos controlar que datos compartimos con terceros, así como también como los compartimos, con lo cual estaremos facilitando la posibilidad de que estos sean revisados, modificados o incluso eliminados desde diferentes aplicaciones externas a las cuales otorguemos permisos.

Niveles de arquitectura REST

Las arquitecturas REST se dividen en 4 niveles principales:

 

Nivel 0: Swamp of POX (Plain Old XML)

El nivel Swamp of POX es el primer nivel de la arquitectura REST. En este nivel los servicios utilizan HTTP como protocolo de transporte plano para intercambiar mensajes entre clientes y servidores. Una de las arquitecturas más conocidas es SOAP y suele ser difícil de utilizar debido a la abultada generación de mensajes complejos.

  

Nivel 1: Recursos

Con el objetivo de simplificar la forma de acceder a los servicios, este nivel implementa el concepto de recurso, es decir lo que las arquitecturas REST publican.

Los recursos hacen referencia a toda aquella información que queremos acceder, modificar o borrar como puede ser la información de una sesión, las facturas, los clientes, etc.

En este nivel para poder referenciar, recuperar o compartir cada uno de los recursos disponibles se utiliza una URI (Uniform Resource Identifier) específica.

 

Nivel 2: Verbos HTTP

En el nivel 2 nos encontramos con 4 verbos fundamentales que podemos utilizar para llevar a cabo cada operación dentro de nuestras Apis REST.

2.1 GET: Este método se utiliza para consultar y leer los diferentes recursos que nuestra api presenta.

2.2 POST: Con Post podremos crear o insertar nuevos recursos dentro del sistema.

2.3 PUT: Al utilizar el verbo PUT actualizaremos el recurso en cuestión sobre el cual estamos aplicando el método.

2.4 PATCH: Se utiliza para aplicar parcialmente modificaciones a un recurso.

2.4 DELETE: Como su nombre lo dice, borra o elimina el recurso seleccionado.

 

Nivel 3:  HATEOAS – Hypermedia as the Engine of Application State

El nivel 3, también conocido como Hypermedia es el último nivel clásico de la arquitectura REST. En él se utilizan links para relacionar los diferentes recursos entre sí, con lo cual nuestra arquitectura reduce el acoplamiento entre cliente y servidor posibilitando que el cliente quede enlazado directamente a un número menor de recursos.

JSON API

JSON (JavaScript Object Notation) es una manera más moderna de trabajar con las arquitecturas REST que nos permitirá crear nuestras APIs a través de unas especificaciones estandarizadas. Lo mejor es que al utilizar JSON API disponemos de una documentación muy madura y con diferentes implementaciones para cada lenguaje. 

Con JSON API podremos obtener la información solicitada al servidor mediante una estructura menos plana que si utilizamos los niveles tradicionales antes mencionados.

API JSON nos posibilita trabajar a partir de una data estructure mediante la cual nuestros clientes accederán al servidor con una flexibilidad mayor permitiendo añadir nuevas funcionalidades a cada método API.

Por ejemplo, al utilizar JSON API podremos añadir al método GET dos nuevas subestructuras como ser includes y links para incorporar al formato de respuesta una mayor información sobre enlaces a datos complementarios o sobre elementos internos que los datos originales necesitan.

Con la implementación de JSON API estaremos reduciendo enormemente el acoplamiento entre cliente y servidor al mismo tiempo que aportamos flexibilidad a la arquitectura REST.

Conclusión

Las mejores practicas de api rest son esenciales para todo aquel desarrollador que busca especializarse en llevar adelante las buenas prácticas de programación.

Aprender a desarrollar, construir y trabajar con el protocolo API REST es fundamental en todo proyecto que desee optimizar los tiempos de ejecución, los costos y la optimización del funcionamiento del sistema. Por todo esto es que API REST forma parte de las buenas prácticas en progrmación informática.

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad