Transferencia de estado representacional (resto)

Definición - ¿Qué significa Transferencia de Estado Representacional (REST)?

La transferencia de estado representacional (REST) ​​es un marco de sistema distribuido que utiliza tecnologías y protocolos web. La arquitectura REST implica interacciones cliente y servidor basadas en la transferencia de recursos. La Web es la implementación REST más grande.

Los sistemas que se ajustan a los principios REST se denominan RESTful.

Techinfo explica la transferencia de estado representacional (REST)

Roy Fielding, uno de los principales autores de la especificación HTTP, desarrolló el concepto REST en 2000 como parte de su tesis doctoral.

REST se puede utilizar para capturar datos de sitios web mediante la interpretación de archivos de páginas web de lenguaje de marcado extensible (XML) con los datos deseados. Además, los editores en línea utilizan REST cuando proporcionan contenido sindicado a los usuarios activando el contenido de la página web y las declaraciones XML. Los usuarios pueden acceder a la página web a través de la URL del sitio web, leer el archivo XML con un navegador web e interpretar y utilizar los datos según sea necesario.

Las restricciones REST básicas incluyen:

  • Cliente y servidor: el cliente y el servidor están separados de las operaciones REST a través de una interfaz uniforme, que mejora la portabilidad del código del cliente.
  • Sin estado: cada solicitud de cliente debe contener todos los datos necesarios para el procesamiento de la solicitud sin almacenar el contexto del cliente en el servidor.
  • Almacenamiento en caché: las respuestas (como las páginas web) se pueden almacenar en caché en una computadora cliente para acelerar la navegación web. Las respuestas se definen como almacenables en caché o no para evitar que los clientes reutilicen datos obsoletos o inapropiados cuando responden a solicitudes posteriores.
  • Sistema en capas: permite a los clientes conectarse al servidor final a través de una capa intermedia para mejorar la escalabilidad.