Rest
Rest
ndice
1. 2. 3.
1. 2. 3. 4. 5.
Historia y antecedentes de servicios REST. Definicin de REST y servicios RESTful. Caractersticas y arquitectura de REST.
Caractersticas general. Arquitectura REST. Funcionamiento de un servicio REST. Diferencias entre REST Service y Web Service. Ejemplos de Servicios REST.
4.
El autor y padre de la arquitectura REST es Roy Thomas Fielding (captulo 5 tesis doctoral, 2000). REST toma elementos de arquitecturas presentes en ese momento, algunas de las cuales siguen en plena vigencia (particularmente, arquitecturas cliente servidor).
REST fue desarrollada de manera paralela a HTTP 1.0 y 1.1; las funcionalidades de REST y HTTP se concibieron apoyndose mutuamente.
3
REST (Transferencia de Estado Representacional) es un estilo de arquitectura software para aquellas aplicaciones que funcionan en red. Objetivo: dar una solucin sencilla al intercambio de informacin entre aplicaciones, sin tener que recurrir a soluciones como CORBA, RPC o SOAP.
Un servicio se denomina RESTful cuando cumple con las caractersticas y requisitos de la arquitectura REST.
4
Gran sencillez y rendimiento. Escalabilidad en las interacciones entre componentes. Interfaces genricas entre cliente-servidor. Despliegue independiente de componentes. Componentes intermedios. Independencia de la plataforma y del lenguaje. Utiliza estndares (HTTP, XML), pero l no es ni ser un estndar. REST no presenta propiedades como seguridad, gestin de la sesin, cookies o QoS pero no le hacen falta porque est por encima de HTTP.
6
Protocolo://servidor:puerto/ruta?cadena de la peticin#fragmento del documento. En un sistema REST tpico se definen 4 operaciones: CREATE, DELETE, READ, UPDATE. Un recurso referenciado por una URI puede tener diferentes formatos dependiendo de la plataforma. Debe ser un sistema sin estados, cada peticin debe ser independiente de las otras. El cliente debe ser capaz de navegar de recurso en recurso, teniendo servicios interrelacionados mediante enlaces.
7
2.
3.
4.
5.
La solicitud de un servicio REST se realizar mediante la utilizacin de URIs, con una peticin. La peticin ir encapsulada en un mensaje de tipo GET.
Emplea las operaciones CRUD: Usa URIs como interfaz para acceso a los recursos. No tiene estado. Proporciona mecanismos de caching.
10
11
REST tiene un prometedor futuro gracias a su alto grado de estandarizacin que proporciona. SOAP sobrevivira dentro de la arquitectura REST para servicios Web.
12
Bibliografa
Servicios REST, transparencias de Aplicaciones telemticas, curso 20102011. Wikipedia:http://en.wikipedia.org/wiki/Representational_state_transfer#RES Tful_web_services Tesis doctoral de Roy Thomas Fielding: http://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm RESTful Java with JAX-RS, por Bill Burke, Editorial OReilly,noviembre de 2009. RESTful Java Web Services, por Jose Sandova, Editorial Packt Publishing, Noviembre de 2009. REST: La Arquitectura de la World Wide Web, transparencias de la Unversidad Rey Juan Carlos, curso 2011-2012. : http://zenon.etsii.urjc.es/grupo/docencia/as/material/tema6.pdf Documentacin del API de Twitter: https://dev.twitter.com/docs/api Documentacin del API de Google: https://developers.google.com/custom-search/v1/using_rest?hl=es-ES
13