¿Qué es REST? - AWS AppSync

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

¿Qué es REST?

A un alto nivel, la transferencia representativa de estados (REST) es una arquitectura de software que impone condiciones sobre cómo API debe funcionar. RESTse creó inicialmente como una guía para gestionar la comunicación en una red compleja como Internet. Puede utilizar una arquitectura REST basada en bases para respaldar una comunicación fiable y de alto rendimiento a escala. Puede implementarla y modificarla fácilmente, lo que aporta visibilidad y portabilidad multiplataforma a cualquier sistema. API

APIlos desarrolladores pueden diseñar APIs utilizando varias arquitecturas diferentes. APIsse llaman REST APIs las que siguen el estilo REST arquitectónico. Los servicios web que implementan REST la arquitectura se denominan servicios RESTful web. El término RESTful API generalmente se refiere a la RESTful webAPIs. Sin embargo, puede utilizar los términos REST API e RESTful API indistintamente.

Los siguientes son algunos de los principios del estilo REST arquitectónico:

Interfaz uniforme

La interfaz uniforme es fundamental para el diseño de cualquier RESTful servicio web. Indica que el servidor transfiere la información en un formato estándar. El recurso formateado se denomina representación en. REST Este formato puede ser diferente de la representación interna del recurso en la aplicación de servidor. Por ejemplo, el servidor puede almacenar datos como texto pero enviarlos en un formato de HTML representación.

La interfaz uniforme impone cuatro restricciones arquitectónicas:

  1. Las solicitudes deben identificar recursos. Lo hacen mediante un identificador de recursos uniforme.

  2. Los clientes tienen suficiente información en la representación del recurso para modificarlo o eliminarlo si así lo desean. El servidor cumple esta condición mediante el envío de metadatos que describen el recurso con más detalle.

  3. Los clientes reciben información sobre cómo seguir procesando la representación. El servidor lo consigue enviando mensajes autodescriptivos que contienen metadatos sobre la mejor manera en la que el cliente puede utilizarlos.

  4. Los clientes reciben información sobre todos los demás recursos relacionados que necesitan para completar una tarea. El servidor lo consigue enviando hipervínculos en la representación para que los clientes puedan descubrir más recursos de forma dinámica.

Ausencia de estado

En REST arquitectura, la apatridia se refiere a un método de comunicación en el que el servidor completa todas las solicitudes de los clientes independientemente de todas las solicitudes anteriores. Los clientes pueden solicitar recursos en cualquier orden y cada solicitud no tiene estado o está aislada de las otras. Esta restricción de REST API diseño implica que el servidor puede comprender y cumplir completamente la solicitud en todo momento.

Sistema por capas

En una arquitectura de sistema por capas, el cliente puede conectarse a otros intermediarios autorizados entre el cliente y el servidor y seguirá recibiendo respuestas del servidor. Los servidores también pueden transferir las solicitudes a otros servidores. Puede diseñar su servicio RESTful web para que se ejecute en varios servidores con varios niveles, como seguridad, aplicaciones y lógica empresarial, y que trabajen juntos para cumplir con las solicitudes de los clientes. Estas capas permanecen invisibles para el cliente.

Capacidad de almacenamiento en caché

RESTfulLos servicios web admiten el almacenamiento en caché, que es el proceso de almacenar algunas respuestas en el cliente o en un intermediario para mejorar el tiempo de respuesta del servidor. Por ejemplo, supongamos que visita un sitio web que tiene imágenes comunes de encabezado y pie de página en todas las páginas. Cada vez que visita una nueva página web, el servidor debe volver a enviar las mismas imágenes. Para evitarlo, el cliente guarda en caché o almacena estas imágenes después de la primera respuesta y, a continuación, las utiliza directamente desde la caché. RESTfullos servicios web controlan el almacenamiento en caché mediante API respuestas que se definen a sí mismas como almacenables en caché o no almacenables en caché.

¿Qué es un? RESTful API

RESTfulAPIes una interfaz que utilizan dos sistemas informáticos para intercambiar información de forma segura a través de Internet. La mayoría de las aplicaciones empresariales tienen que comunicarse con otras aplicaciones internas y de terceros para realizar diversas tareas. Por ejemplo, para generar nóminas mensuales, su sistema de cuentas interno debe compartir los datos con el sistema bancario del cliente para automatizar la facturación y comunicarse con una aplicación interna de plantillas de horarios. RESTfulAPIsrespaldan este intercambio de información porque siguen estándares de comunicación de software seguros, confiables y eficientes.

¿Cómo RESTful APIs funcionan?

La función básica de un RESTful API es la misma que la de navegar por Internet. El cliente contacta con el servidor utilizando el API cuando necesita un recurso. APIlos desarrolladores explican cómo el cliente debe utilizarla REST API en la API documentación de la aplicación del servidor. Estos son los pasos generales para cualquier REST API llamada:

  1. El cliente envía una solicitud al servidor. El cliente sigue la API documentación para formatear la solicitud de forma que el servidor la comprenda.

  2. El servidor autentica al cliente y confirma que este tiene derecho a realizar la solicitud.

  3. El servidor recibe la solicitud y la procesa internamente.

  4. El servidor devuelve una respuesta al cliente. La respuesta contiene información que indica al cliente si la solicitud se ha realizado correctamente. La respuesta también incluye la información que el cliente haya solicitado.

Los detalles de la REST API solicitud y la respuesta varían ligeramente según la forma en que los API desarrolladores diseñen laAPI.