REST
Es la abreviatura de "Representational State Transfer".
REST es un conjunto definido de estándares para transferir recursos a través de la web. El método REST se aplica comúnmente a las API ("API REST"), que permiten a los desarrolladores acceder a datos de sistemas remotos a través de Internet.
REST define seis restricciones arquitectónicas:
- Modelo cliente-servidor – un servidor procesa las solicitudes de los clientes, y estos solo pueden acceder a los datos que necesitan del servidor
- Sin estado – las solicitudes son temporales y no se almacenan datos del cliente en el servidor
- Almacenable en caché – las solicitudes se pueden almacenar en caché para mejorar el rendimiento
- Interfaz uniforme – el acceso a los datos debe ser coherente para todos los usuarios y sistemas
- Compatibilidad con sistemas en capas – las solicitudes se pueden procesar jerárquicamente y enrutar a través de varios sistemas
- Código bajo demanda (opcional) – los servidores pueden entregar código ejecutable a los sistemas cliente
REST frente a SOAP
REST suele compararse con SOAP, otro conjunto de estándares para transferir datos a través de Internet. Sin embargo, REST es simplemente un estilo de diseño, mientras que SOAP es un protocolo real con reglas y comandos específicos. Tanto las API REST como las API SOAP transmiten datos mediante HTTP, pero SOAP está limitado a datos XML, mientras que REST es más flexible.
Como SOAP es un protocolo oficial, todos los mensajes enviados mediante SOAP deben usar el mismo formato de "envoltorio", con un encabezado y un cuerpo. REST, que apareció después de SOAP, tiene menos restricciones y suele considerarse una alternativa ligera a SOAP.
NOTE: Las API que cumplen las directrices de REST se denominan técnicamente "API RESTful", pero muchos desarrolladores se refieren a ellas como "API REST".
Pon a prueba tu conocimiento