Desarrollo Web

Qué es REST: Conoce su potencia

Te contamos en menos de 8 minutos qué es REST, la interfaz para conectar varios sistemas basados en el protocolo HTTP.

Publicado el 17 de Mayo de 2018
Compartir

Actualmente se escucha bastante hablar de REST, de servicios REST, de aplicaciones REST, pues bien, REST es la abreviatura de REPRESENTATIONAL STATE TRANSFER.

Conviértete en un Backend Developer
Domina los lenguajes de programación más demandados. Accede a cursos, talleres y laboratorios para crear proyectos con Java, Python, PHP, Microsoft .NET y más
Comenzar gratis ahora

Qué significa REST

REST es una interfaz para conectar varios sistemas basados en el protocolo HTTP (uno de los protocolos más antiguos) y nos sirve para obtener y generar datos y operaciones, devolviendo esos datos en formatos muy específicos, como XML y JSON.

El formato más usado en la actualidad es el formato JSON, ya que es más ligero y legible en comparación al formato XML. Elegir uno será cuestión de la lógica y necesidades de cada proyecto.

REST se apoya en HTTP, los verbos que utiliza son exactamente los mismos, con ellos se puede hacer GET, POST, PUT y DELETE. De aquí surge una alternativa a SOAP.

Cuando hablamos de SOAP hablamos de una arquitectura divididas por niveles que se utilizaba para hacer un servicio, es más complejo de montar como de gestionar y solo trabajaba con XML.

Ahora bien, REST llega a solucionar esa complejidad que añadía SOAP, haciendo mucho más fácil el desarrollo de una API REST, en este caso de un servicio en el cual nosotros vamos a almacenar nuestra lógica de negocio y vamos servir los datos con una serie de recursos URL y una serie de datos que nosotros los limitaremos, es decir, será nuestro BACKEND nuestra lógica pura de negocios que nosotros vamos a utilizar.

Imagen 0 en ¿Qué es REST? Conoce su potencia

Por qué debemos utilizar REST

REST no es solo una moda, y es por las siguientes razones que esta interfaz está teniendo tanto protagonismo en los últimos años:

  • Crea una petición HTTP que contiene toda la información necesaria, es decir, un REQUEST a un servidor tiene toda la información necesaria y solo espera una RESPONSE, ósea una respuesta en concreto.
  • Se apoya sobre un protocolo que es el que se utiliza para las páginas web, que es HTTP, es un protocolo que existe hace muchos años y que ya está consolidado, no se tiene que inventar ni realizar cosas nuevas.
  • Se apoya en los métodos básicos de HTTP, como son:
    • Post: Para crear recursos nuevos.
    • Get: Para obtener un listado o un recurso en concreto.
    • Put: Para modificar.
    • Patch: Para modificar un recurso que no es un recurso de un dato, por ejemplo.
    • Delete: Para borrar un recurso, un dato por ejemplo de nuestra base de datos.
  • Todos los objetos se manipulan mediante URI, por ejemplo, si tenemos un recurso usuario y queremos acceder a un usuario en concreto nuestra URI seria /user/identificadordelobjeto, con eso ya tendríamos un servicio USER preparado para obtener la información de un usuario, dado un ID.
Mejora las habilidades de tus desarrolladores
Acelera la formación tecnológica de tus equipos con OpenWebinars. Desarrolla tu estrategia de atracción, fidelización y crecimiento de tus profesionales con el menor esfuerzo.
Solicitar más información

Ventajas de REST

  • Nos permite separar el cliente del servidor. Esto quiere decir que nuestro servidor se puede desarrollar en Node y Express, y nuestra API REST con Vue por ejemplo, no tiene por qué estar todos dentro de un mismo.

  • En la actualidad tiene una gran comunidad como proyecto en Github.

  • Podemos crear un diseño de un microservicio orientado a un dominio (DDD)

  • Es totalmente independiente de la plataforma, así que podemos hacer uso de REST tanto en Windows, Linux, Mac o el sistema operativo que nosotros queramos.

  • Podemos hacer nuestra API pública, permitiendo darnos visibilidad si la hacemos pública.

  • Nos da escalabilidad, porque tenemos la separación de conceptos de CLIENTE y SERVIDOR, por tanto, podemos dedicarnos exclusivamente a la parte del servidor.

Frontend backend

Quién usa REST

Muchas empresas como Twitter, Facebook, Google, Netflix, LinkedIn y miles de startups y empresas usan REST. Todas estas empresas y servicios tienen su API REST por un lado con su lógica de negocio y por otro lado su parte frontend, con lo cual nos permite centrarnos también un poco más en lo que es nuestra lógica de negocio haciendo una API REST potente.

Estas API pueden ser públicas y lo pueden consumir otros usuarios, con lo cual tenemos una forma de dar visibilidad a nuestra API y de testearla, no podemos olvidar que la parte de TEST es una de la parte más importantes, pues ¿por qué no nos serviría como TEST que otros usuarios prueben nuestra API REST y nos den Feedback?, pues aquí lo tenemos solo hay que segurizarla y es lo que ocurre con estas empresas.

Formación relacionada

Si te ha intereasado esta información sobre REST y quieres aprender más sobre esta tecnología, te recomendamos realizar el curso de desarrollo de una API REST con Spring Boot, con el cual serás capaz de desarrollar una API REST desde cero hasta la documentación final de la misma, utilizando para ello Spring Boot.

Imagen 2 en Qué es REST: Conoce su potencia


Compartir este post

También te puede interesar...

Lab. Validar datos en tu API REST con Spring Boot

Laboratorio de Validación de datos en tu API REST con Spring Boot

2 horas y 5 minutos · Laboratorio

En este laboratorio seremos capaces de construir un proyecto capaz de validar las entradas de datos, devolviendo al usuario respuestas de error muy completas.

  • Desarrollo Web
API Rest con Node JS y Express: JWT y ficheros

Curso Crea un API Rest con Node JS y Express: JWT y ficheros

1 hora y 41 minutos · Curso

En este curso aprenderemos a crear una API Rest usando Node.js y Expres.js, así como a añadir el sistema JWT y subida de ficheros.

  • Desarrollo Web
Curso Crea una API REST con Django desde cero

Curso Crea una API REST con Django desde cero

3 horas y 24 minutos · Curso

Con este curso aprenderás la base necesaria para crear tu propia API REST utilizando Django y Django Rest Framework, además de aprender a utilizar el …

  • Desarrollo Web
Artículos
Ver todos