jueves, diciembre 2, 2021

Qué significa REST API

Una API REST (también conocida como RESTful API) es una interfaz de programación de aplicaciones (API o web API) que se ajusta a las limitaciones del estilo arquitectónico REST y permite la interacción con los servicios web RESTful. REST significa transferencia de estado representacional y fue creado por el científico informático Roy Fielding.

Qué es una API

Una API es un conjunto de definiciones y protocolos para crear e integrar software de aplicación. A veces se lo conoce como un contrato entre un proveedor de información y un usuario de información, que establece el contenido requerido por el consumidor (la llamada) y el contenido requerido por el productor (la respuesta). Por ejemplo, el diseño de la API para un servicio meteorológico podría especificar que el usuario proporcione un código postal y que el productor responda con una respuesta de 2 partes, la primera es la temperatura alta y la segunda la baja.

En otras palabras, si desea interactuar con una computadora o sistema para recuperar información o realizar una función, una API lo ayuda a comunicar lo que desea a ese sistema para que pueda comprender y cumplir la solicitud.

Puede pensar en una API como un mediador entre los usuarios o clientes y los recursos o servicios web que desean obtener. También es una forma de que una organización comparta recursos e información mientras mantiene la seguridad, el control y la autenticación, lo que determina quién tiene acceso a qué.

Otra ventaja de una API es que no es necesario que conozca los detalles del almacenamiento en caché: cómo se recupera su recurso o de dónde proviene.

Qué es REST

REST es un conjunto de restricciones arquitectónicas, no un protocolo ni un estándar. Los desarrolladores de API pueden implementar REST de diversas formas.

Cuando se realiza una solicitud de cliente a través de una API RESTful, transfiere una representación del estado del recurso al solicitante o al punto final. Esta información, o representación, se entrega en uno de varios formatos a través de HTTP: JSON (Notación de Objetos Javascript), HTML, XLT, Python, PHP o texto sin formato. JSON es el formato de archivo más popular en general porque, a pesar de su nombre, es independiente del idioma y es legible tanto por humanos como por máquinas.

Algo más a tener en cuenta: los encabezados y los parámetros también son importantes en los métodos HTTP de una solicitud HTTP de la API RESTful, ya que contienen información de identificación importante en cuanto a los metadatos de la solicitud, la autorización, el identificador uniforme de recursos (URI), el almacenamiento en caché, las cookies y más. Hay encabezados de solicitud y encabezados de respuesta, cada uno con su propia información de conexión HTTP y códigos de estado.

Para que una API se considere RESTful, debe cumplir con estos criterios:

  • Una arquitectura cliente-servidor compuesta por clientes, servidores y recursos, con solicitudes gestionadas a través de HTTP.
  • Comunicación cliente-servidor sin estado, lo que significa que no se almacena información del cliente entre las solicitudes de obtención y cada solicitud es independiente y no está conectada.
  • Datos almacenables en caché que agilizan las interacciones cliente-servidor.
  • Una interfaz uniforme entre componentes para que la información se transfiera de forma estándar. Esto requiere que:
    • los recursos solicitados son identificables y separados de las representaciones enviadas al cliente.
    • Los recursos pueden ser manipulados por el cliente a través de la representación que reciben porque la representación contiene suficiente información para hacerlo.
    • los mensajes autodescriptivos devueltos al cliente tienen suficiente información para describir cómo el cliente debe procesarlos.
    • el hipertexto / hipermedia está disponible, lo que significa que después de acceder a un recurso, el cliente debería poder usar hipervínculos para encontrar todas las demás acciones disponibles actualmente que puede realizar.
  • Un sistema por capas que organiza cada tipo de servidor (los responsables de la seguridad, el equilibrio de carga, etc.) implica la recuperación de la información solicitada en jerarquías, invisibles para el cliente.
  • Código a pedido (opcional): la capacidad de enviar código ejecutable desde el servidor al cliente cuando se lo solicite, extendiendo la funcionalidad del cliente.

Aunque la API REST tiene estos criterios para cumplir, todavía se considera más fácil de usar que un protocolo prescrito como SOAP (Protocolo simple de acceso a objetos), que tiene requisitos específicos como mensajería XML y seguridad incorporada y cumplimiento de transacciones que lo hacen más lento y más pesado.

Por el contrario, REST es un conjunto de pautas que se pueden implementar según sea necesario, lo que hace que las API de REST sean más rápidas y livianas, con una mayor escalabilidad, perfecto para Internet de las cosas (IoT) y el desarrollo de aplicaciones móviles.

RELACIONADOS

- Publicidad -spot_img

ÚLTIMas publicaciones