SlideShare uma empresa Scribd logo
1 de 35
REST Web SERVICES ,[object Object],[object Object]
¿Qué es un webservice ?
Hace mucho tiempo... HTTP, HTML, AJAX Navegadores Usuarios Clientes Locales WEB
Web Programable ,[object Object],[object Object]
Web Programable HTTP, HTML, AJAX Navegadores Usuarios HTTP, REST, SOAP Clientes Locales SERVICIOS  WWW Composición de Servicios ( Mashups) WEB
REST
REST: Definición ,[object Object],[object Object],[object Object],[object Object]
REST: Tecnología
[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],REST: Tecnología
[object Object],[object Object],HTTP GET  http://example.com/libros/84-8403-489-5 Response: <Libro> <Titulo>Historia de Roma</Titulo> <Autor uri=‘autores/fbert/’>Francisco Bertolini</Autor> <Precio>250</Precio> <Stock>2400</Stock> <Editorial uri=‘editoriales/edimat/’>Edimat</Editorial> </Libro>
[object Object],[object Object],[object Object],[object Object],[object Object],If-Modified-Since HTTP/1.1 304 Not Modified
[object Object],[object Object],GET Obtener Recurso Seguro, Cached, Cond. POST Crear Recursos No Seguro PUT Modificar Recursos Existentes Idempotente DELETE Eliminar Recursos Idempotente
REST ,[object Object],[object Object],[object Object],[object Object],[object Object]
Arquitectura REST
ROA: Orientado a Recurso ,[object Object],[object Object],[object Object],[object Object]
ROA ro ro ro ro ro ro ro ¿Cómo modelamos Recursos ? Entidades del sistema que pueden ser manipuladas Tenemos que pensar el comportamiento de los recursos mas allá del CRUD:  CRUD es la interfaz no la Implementación ¿ GeneXus ?  ¡ Transacciones !
ROA ,[object Object],[object Object],[object Object]
ROA ro ro ro ro ro ro ro REST es diseño para consumo en contraposición al diseño para integración Es el B2C de los servicios La plataforma ES el Web
ROA ro ro ro ro ro ro ro Seguridad: HTTPS  Identidad: HTTP Authentication +  OAuth / OpenId Manejo de concurrencia: Status Headers (ETag) Modelado de flujos como cambios en Recursos
Ejemplos
Web APIs
Web APIs
GXBase API
GXBase API
GXBase API
REST en GeneXus ,[object Object],[object Object],[object Object]
REST en GeneXus (Consumo) (Consumo) BC1.Load() BC1.Save() BC1.Delete() DP1([Parm,...])
REST en GeneXus
REST en GeneXus
REST en GeneXus Demo
 
En conclusión...
WS* y la arquitectura REST ROA:  “RESTful” web services.  HTTP (XML, JSON, ...)  Orientado a Recursos WS-* Stack:  RPC-Style WEB SERVICES XML/XSD/SOAP Orientado a procesos
Resumiendo REST como opción de publicación API basada en recursos La lógica de negocios es parte del recurso ( reglas de negocio) Composición de servicios potencia mi solución
¡Muchas Gracias!

Mais conteúdo relacionado

Mais procurados (20)

Understanding REST
Understanding RESTUnderstanding REST
Understanding REST
 
Restful web services ppt
Restful web services pptRestful web services ppt
Restful web services ppt
 
Deploying a website
Deploying a websiteDeploying a website
Deploying a website
 
Introduction To REST
Introduction To RESTIntroduction To REST
Introduction To REST
 
REST API
REST APIREST API
REST API
 
RESTful services
RESTful servicesRESTful services
RESTful services
 
Restful api
Restful apiRestful api
Restful api
 
Rest & RESTful WebServices
Rest & RESTful WebServicesRest & RESTful WebServices
Rest & RESTful WebServices
 
Php course-syllabus
Php course-syllabusPhp course-syllabus
Php course-syllabus
 
Understanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple StepsUnderstanding REST APIs in 5 Simple Steps
Understanding REST APIs in 5 Simple Steps
 
Introduction to the Web API
Introduction to the Web APIIntroduction to the Web API
Introduction to the Web API
 
WSO2 API Platform: Vision and Roadmap
WSO2 API Platform: Vision and RoadmapWSO2 API Platform: Vision and Roadmap
WSO2 API Platform: Vision and Roadmap
 
Api security
Api security Api security
Api security
 
REST & RESTful Web Services
REST & RESTful Web ServicesREST & RESTful Web Services
REST & RESTful Web Services
 
Introduction to API
Introduction to APIIntroduction to API
Introduction to API
 
Api types
Api typesApi types
Api types
 
Rest API
Rest APIRest API
Rest API
 
REST vs SOAP
REST vs SOAPREST vs SOAP
REST vs SOAP
 
C# REST API
C# REST APIC# REST API
C# REST API
 
PHP Project PPT
PHP Project PPTPHP Project PPT
PHP Project PPT
 

Destaque

Charla Web Services
Charla Web ServicesCharla Web Services
Charla Web ServicesJose Selman
 
Yupp PHP Framework
Yupp PHP FrameworkYupp PHP Framework
Yupp PHP FrameworkPablo Pazos
 
4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XML4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XMLJuan Carlos Rubio Pineda
 
Ebe2013: productividad conherramientas en la nube
Ebe2013: productividad conherramientas en la nubeEbe2013: productividad conherramientas en la nube
Ebe2013: productividad conherramientas en la nubeJuan Carlos Rubio Pineda
 
1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XMLJuan Carlos Rubio Pineda
 
8/9 Curso JEE5, Soa, Web Services, ESB y XML
8/9 Curso JEE5, Soa, Web Services, ESB y XML8/9 Curso JEE5, Soa, Web Services, ESB y XML
8/9 Curso JEE5, Soa, Web Services, ESB y XMLJuan Carlos Rubio Pineda
 
7/9 Curso JEE5, Soa, Web Services, ESB y XML
7/9 Curso JEE5, Soa, Web Services, ESB y XML7/9 Curso JEE5, Soa, Web Services, ESB y XML
7/9 Curso JEE5, Soa, Web Services, ESB y XMLJuan Carlos Rubio Pineda
 
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)Nacho García Fernández
 
WORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTWORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTBEEVA_es
 
Componentes Web y El Framework Polymer
Componentes Web y El Framework PolymerComponentes Web y El Framework Polymer
Componentes Web y El Framework PolymerJavier Vélez Reyes
 

Destaque (20)

Charla Web Services
Charla Web ServicesCharla Web Services
Charla Web Services
 
Charla REST API
Charla REST APICharla REST API
Charla REST API
 
Simplemente REST
Simplemente RESTSimplemente REST
Simplemente REST
 
Yupp PHP Framework
Yupp PHP FrameworkYupp PHP Framework
Yupp PHP Framework
 
4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XML4/9 Curso JEE5, Soa, Web Services, ESB y XML
4/9 Curso JEE5, Soa, Web Services, ESB y XML
 
Ebe2013: productividad conherramientas en la nube
Ebe2013: productividad conherramientas en la nubeEbe2013: productividad conherramientas en la nube
Ebe2013: productividad conherramientas en la nube
 
Introduccion Servicios Web
Introduccion Servicios WebIntroduccion Servicios Web
Introduccion Servicios Web
 
1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML1/9 Curso JEE5, Soa, Web Services, ESB y XML
1/9 Curso JEE5, Soa, Web Services, ESB y XML
 
8/9 Curso JEE5, Soa, Web Services, ESB y XML
8/9 Curso JEE5, Soa, Web Services, ESB y XML8/9 Curso JEE5, Soa, Web Services, ESB y XML
8/9 Curso JEE5, Soa, Web Services, ESB y XML
 
Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Angular Conceptos Practicos 1
Angular Conceptos Practicos 1Angular Conceptos Practicos 1
Angular Conceptos Practicos 1
 
Introducción a Angular JS
Introducción a Angular JSIntroducción a Angular JS
Introducción a Angular JS
 
El Proyecto Polymer
El Proyecto PolymerEl Proyecto Polymer
El Proyecto Polymer
 
SOA y Web Services
SOA y Web ServicesSOA y Web Services
SOA y Web Services
 
7/9 Curso JEE5, Soa, Web Services, ESB y XML
7/9 Curso JEE5, Soa, Web Services, ESB y XML7/9 Curso JEE5, Soa, Web Services, ESB y XML
7/9 Curso JEE5, Soa, Web Services, ESB y XML
 
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
AngularJS 1 - A Superheroic Javascript MVC framework (Spanish)
 
Introducción a REST - SymfonyVLC
Introducción a REST - SymfonyVLCIntroducción a REST - SymfonyVLC
Introducción a REST - SymfonyVLC
 
WORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API RESTWORKSHOP I: Introducción a API REST
WORKSHOP I: Introducción a API REST
 
3/9 soa y web services
3/9 soa y web services3/9 soa y web services
3/9 soa y web services
 
Componentes Web y El Framework Polymer
Componentes Web y El Framework PolymerComponentes Web y El Framework Polymer
Componentes Web y El Framework Polymer
 

Semelhante a REST Web Services en 40

Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con RESTAlex Puig
 
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010Andrés Iturralde
 
Novedades en Desarrollo en SharePoint 2013
Novedades en Desarrollo en SharePoint 2013Novedades en Desarrollo en SharePoint 2013
Novedades en Desarrollo en SharePoint 2013Juan Carlos Gonzalez
 
SharePoint 2010 Introducción para Desarrolladores
SharePoint 2010 Introducción para DesarrolladoresSharePoint 2010 Introducción para Desarrolladores
SharePoint 2010 Introducción para DesarrolladoresAndrés Iturralde
 
Integración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptxIntegración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptxLuisTenorio42
 
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptxArquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptxXavierNavia
 
Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...
Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...
Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...Andrés Iturralde
 
Portales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenterPortales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenterJaime Cid
 
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointEstrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointDaniel Laco
 
13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)
13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)
13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)Luis Fernando Aguas Bucheli
 
Arquitectura Rest
Arquitectura RestArquitectura Rest
Arquitectura RestIsrael Rey
 
Sharepoint server 2010 - La nueva colaboración
Sharepoint server 2010  - La nueva colaboraciónSharepoint server 2010  - La nueva colaboración
Sharepoint server 2010 - La nueva colaboraciónAndrés Iturralde
 
Modelos de API Para El Diseño de Servicios
Modelos de API Para El Diseño de ServiciosModelos de API Para El Diseño de Servicios
Modelos de API Para El Diseño de ServiciosJavier Vélez Reyes
 

Semelhante a REST Web Services en 40 (20)

T final modulo_1
T final modulo_1T final modulo_1
T final modulo_1
 
Ingeneria de software III
Ingeneria de software IIIIngeneria de software III
Ingeneria de software III
 
Ingeneria de software iii
Ingeneria de software iiiIngeneria de software iii
Ingeneria de software iii
 
Desarrollando un API con REST
Desarrollando un API con RESTDesarrollando un API con REST
Desarrollando un API con REST
 
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
Bajo el Toldo con la Programabilidad de Microsoft SharePoint 2010
 
Novedades en Desarrollo en SharePoint 2013
Novedades en Desarrollo en SharePoint 2013Novedades en Desarrollo en SharePoint 2013
Novedades en Desarrollo en SharePoint 2013
 
SharePoint 2010 Introducción para Desarrolladores
SharePoint 2010 Introducción para DesarrolladoresSharePoint 2010 Introducción para Desarrolladores
SharePoint 2010 Introducción para Desarrolladores
 
Integración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptxIntegración de Tecnologías y Plataformas.pptx
Integración de Tecnologías y Plataformas.pptx
 
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptxArquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
 
Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...
Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...
Esto es todo sobre los servicios Desarrollo de Aplicaciones Personalizadas pa...
 
Portales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenterPortales Enterprise 2.0 con WebCenter
Portales Enterprise 2.0 con WebCenter
 
Estrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepointEstrategias de desarrollo en sharepoint
Estrategias de desarrollo en sharepoint
 
13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)
13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)
13-Unidad 3. WebServices-3.3. Inicio de Proyecto (Desarrollo)
 
Scom5 Ws Ii
Scom5 Ws IiScom5 Ws Ii
Scom5 Ws Ii
 
Arquitectura Rest
Arquitectura RestArquitectura Rest
Arquitectura Rest
 
Paper ieee
Paper ieeePaper ieee
Paper ieee
 
Rest Conf Rails
Rest Conf RailsRest Conf Rails
Rest Conf Rails
 
Sharepoint server 2010 - La nueva colaboración
Sharepoint server 2010  - La nueva colaboraciónSharepoint server 2010  - La nueva colaboración
Sharepoint server 2010 - La nueva colaboración
 
Mashups
MashupsMashups
Mashups
 
Modelos de API Para El Diseño de Servicios
Modelos de API Para El Diseño de ServiciosModelos de API Para El Diseño de Servicios
Modelos de API Para El Diseño de Servicios
 

Mais de GeneXus

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsGeneXus
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!GeneXus
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in ActionGeneXus
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...GeneXus
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?GeneXus
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroGeneXus
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y PlataformasGeneXus
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosGeneXus
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaGeneXus
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 StudentsGeneXus
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsiveGeneXus
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusGeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosGeneXus
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAPGeneXus
 
Going mobile
Going mobileGoing mobile
Going mobileGeneXus
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusGeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusGeneXus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...GeneXus
 

Mais de GeneXus (20)

After Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) BotsAfter Chatbots Yo (Ro) Bots
After Chatbots Yo (Ro) Bots
 
Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!Construya las aplicaciones del futuro ¡hoy!
Construya las aplicaciones del futuro ¡hoy!
 
Live Editing in Action
Live Editing in ActionLive Editing in Action
Live Editing in Action
 
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
Experiencias en el desarrollo de aplicaciones móviles en el sector salud de M...
 
¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?¿Pensando en implementar un sistema de gestión integral en su organización?
¿Pensando en implementar un sistema de gestión integral en su organización?
 
K2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuroK2B Tools el compañero de viaje ideal hacia el futuro
K2B Tools el compañero de viaje ideal hacia el futuro
 
Sd y Plataformas
Sd y PlataformasSd y Plataformas
Sd y Plataformas
 
PXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivosPXTools: Nuevo generador y nuevos controles responsivos
PXTools: Nuevo generador y nuevos controles responsivos
 
APPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industriaAPPlícate: Aplicaciones móviles para el desarrollo de la industria
APPlícate: Aplicaciones móviles para el desarrollo de la industria
 
GeneXus 4 Students
GeneXus 4 StudentsGeneXus 4 Students
GeneXus 4 Students
 
La importancia de ser responsive
La importancia de ser responsiveLa importancia de ser responsive
La importancia de ser responsive
 
K2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXusK2B: El ERP nativo para el mundo GeneXus
K2B: El ERP nativo para el mundo GeneXus
 
GeneXus 15 (Salto)
GeneXus 15 (Salto)GeneXus 15 (Salto)
GeneXus 15 (Salto)
 
GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.GeneXus Cloud Deployment Services. El camino a la nube.
GeneXus Cloud Deployment Services. El camino a la nube.
 
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuariosLigaMX con GeneXus: De 0 a 1.700.000 de usuarios
LigaMX con GeneXus: De 0 a 1.700.000 de usuarios
 
Innovando con GeneXus y SAP
Innovando con GeneXus y SAPInnovando con GeneXus y SAP
Innovando con GeneXus y SAP
 
Going mobile
Going mobileGoing mobile
Going mobile
 
Audit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXusAudit+: La mejor forma de auditar KB’s GeneXus
Audit+: La mejor forma de auditar KB’s GeneXus
 
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite PlusWW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
WW+, SD+ y Audit+: Potencie GeneXus la Suite Plus
 
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
Aproveche las ventajas de la colaboración entre GeneXus y Cloud Shared Office...
 

Último

International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 

Último (16)

International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 

REST Web Services en 40

Notas do Editor

  1. REST Web Services
  2. Web Programable
  3. Inicialmente tenemos la visión tradicional de las aplicaciones en las que tenemos aplicaciones en clientes locales, aisladas y por otro lado las &amp;quot;paginas WEB&amp;quot;que evolucionan la tecnología dentro del browser y funcionan conectadas a servidores que entregan paginas o parte de las mismas y había una clara distinción entre las dos cosas.
  4. El fenómeno que aparece a continuación es análogo a lo que sucede cuando se comienza con el empaquetamiento de funciones en bibliotecas en los lenguajes de programación y nacen los frameworks de aplicaciones.De la misma manera se comienzan a utilizar Datos, de distinta procedencia, para enriquecer la aplicación, combinando datos de diversas fuentes con los propios logro una aplicación mas útil. El ejemplo canónico son los Mapas, pero también hay otros ejemplos, fuera de la información geográfica, uso de perfiles ( notablemente facebook o openid ) login, etc. El fenómeno que aparece a continuación es análogo a lo que sucede cuando se comienza con el empaquetamiento de funciones en bibliotecas en los lenguajes de programación y nacen los frameworks de aplicaciones.De la misma manera se comienzan a utilizar Datos, de distinta procedencia, para enriquecer la aplicación, combinando datos de diversas fuentes con los propios logro una aplicación mas útil. El ejemplo canónico son los Mapas, pero también hay otros ejemplos, fuera de la información geográfica, uso de perfiles ( notablemente facebook o openid ) login, etc.
  5. Así llegamos a el escenario actual que todavía se esta desarrollando , donde las aplicaciones locales/desconectadas tienden a ser minoría, y los clientes usan datos externos, y a su vez los propios servicios se componen de datos de otros servicios (Mashups)Básicamente, todas las aplicaciones consumen servicios y como veremos mas adelante, muchas producen o publican información también.
  6. En este escenario están los servicio REST
  7. Que es Rest ?ReST viene de REpresentational State TransferEs una implementación de Servicios web usando los principios y las facilidades del protocolo HTTPEl término fue introducido por Roy Fielding en 2000 en su disertación de doctorado.Es al mismo tiempo una tecnología de implementación y una manera de diseñar los servicios.
  8. Primero vamos a ver la parte de implementación , para luego ver como impacta en el diseño el marco de servicios.
  9. REST es un protocolo basado en Recursos ¿Qué es un recurso ? Un recurso es cualquier cosa que nosotros queramos poner accesible en el web . Comúnmente son las Entidades y Por ejemplo Clientes, Documentos, Artículos , etcA su vez los recursos están identificados por un URI a través de la cual puedo obtener una representación del recurso o de una lista de recurso en el caso de los libros.
  10. Como obtengo estas representaciones ?Usando el protocolo ya existente el HTTP, mediante un get a la URI del recurso obtengo su representación por defecto.En este caso es XML Observemos la otra característica : los recursos tienen enlaces que me permiten navegar de uno a otro sin ninguna descripción o meta-data externa esto permite el &amp;quot;auto-descubrimiento&amp;quot;
  11. Otra ventaja es el uso de los cabezales de HTTP ( al igual que lo hace cualquier pagina web ) para implementar el Cache - controlando si quiero cache- eso puede ser a nivel del browser, o de un servidor ProxyTambién la autenticación se puede implementar con los mismos cabezales de httpy se puede realizar la lectura condicional ( quiero este recurso , si cambio después de la ultima vez que lo leí) usando Last-modified e If-modified-since
  12. Los verbos de HTTP permiten tener una interfaz uniforme , la misma, no importa el servicio, lo cual es muy bueno.Resumiendo, los métodos para los cuales se usan los verbos :GET Read , es seguro y esta garantido que no tiene efectos secundariosPOST Crea un recurso , el POST es &amp;quot;no seguro&amp;quot; en el sentido que los efectos no están definidos y dependen del servicio y no se puede realizar dos vecesPUT es Update, actualización es IDEMPOTENTE o sea se puede realizar varias llamadas o una el resultado es el mismoFinalmente el DELETE es usado para borrar y también es Idempotente .
  13. Resumiendo:REST es una manera de diseñar e implementar Web Services , basado en recursosCada recurso se identifica con una URLPara operar en esas url se usan los métodos del HTTPEsto recursos se transmiten como representaciones , usualmente en XML o JSON, pero puede también ser HTML o formatos binarios, dependiendo de la necesidad de la aplicación , incluso se pueden publicar recursos en varios formatos ( con mas de una representación)
  14. REST como arquitecturaLa tecnología ReST lleva asociada una manera de diseñar la interface de servicios. La orientación a Recursos contrasta con la orientación a Procesos o los servicios RPC que tradicionalmente vemos.
  15. Para volver a enumerar los principios básicos de la arquitectura ROA:Direccionable - Los recursos tienen una uri unicaSin estado - No se necesita un estado del server para realizar ninguna operación, esta todo en la representación y el llamado HTTPInterfaz uniforme -El GET siempre obtiene el recurso, y los demás métodos se comportan igual, no es necesaria una declaración de los servicios a nivel de firma de métodos para saber como usarlos.Conectado - Los servicios se referencian entre si para permitir navegabilidad dentro de la aplicación,
  16. CRUD es la Interfaz del REST , pero ¿Que modelamos detrás de los servicios?
  17. Como presento estas interfaces, por un lado permito la lectura de entidades de mi sistema, como “Pull” polling sobre el estado La contracara y el complemento esta en el push, es decir la notificación a pedido, como complemento de REST están los WEB Hooks que permiten una notificación a una URL arbitraria cuando surge un evento, esto esta también emparentado con el REST ya que abre la cancha en el mismo sentido, YO no se necesariamente para que van a usar estas notificaciones . Proveo el servicio y espero que surjan maneras innovadoras de aprovecharlo.
  18. Modelamos las entidades del negocio, preparamos interfaces no con el objetivo de integrarse con plataformas especificas ( para algo que hemos planeado ) , aunque eso tambien entra dentro de lo que ReST sirve. Sino para lo que no anticipamos, abrimos la interface para el consumo , con herramientas, plataformas y lenguajes que no anticipamos, para usos imprevistos que quizas encuentren valor en donde no lo creiamos posible. Esto es publicacion para el consumo. Nos sumamos al web
  19. Todo se puede modelar en base a Recursos Simple Transporte existente Seguridad existente Bibliotecas exiserntes Metaforas conocidas (CRUD) Escalable en el WEB con herramientas usadas hoy
  20. Ahora veamos algunos ejemplos de como se esta usando REST
  21. Existen muchas aplicaciones WEB que ofrecen servicios de SaaS en este ejemplo vemos una de facturación y cobro con una buena interfaz web
  22. Esta misma aplicación web tienen detrás una api rest ( sobre la cual ella misma funciona) que ademas ofrece a sus clientes como un enorme valor agregado: Si tengo una plataforma particular para la que no existe un cliente , lo hago. Si quiero integrarlo con mi sistema , también, la misma potencia que cualquier api de servicios pero que modela todo como recurso, es liviana, sencilla y rápida.
  23. Otra aplicacion interesante que podemos ver es el GeneXus Server , que ya habran visto, en esto tambien se esta trabajando , una api REST para el server . Aqui vemos el directorio /help donde podemos ver el catalogo de recursos que expone el server.
  24. Solo dos ejemplos breves de como se trabaja esto, primer punto de entrada un listado con un GET de todas las KBs GeneXus que están hosteadas en ese servidor. A partir de ahí puedo listar los objetos de la KB, filtrar por tipo hasta llegar...
  25. Al objeto propiamente dicho donde obtengo el contenido completo del objeto para poder trabajar con el. Esto tiene gran potencial de integración de KB con otros productos, servicios de alerta , etc.
  26. Como implementamos ReST en GeneXus ? Como habiamos dicho las Transacciones (Entidades) del sistema se modelan como recursos, a traves de los Business components. Tambien podemos exponer recursos a traves de Dataproviders cuando la generacion implica algo mas complejo Soportando las representaciones que hoy ya existen en la X Evolution 1 para serializacion de BCs y SDTs Con un uso de ReST pragmatico, siguiendo las recomendaciones de la arquitectura Rest siempre que tenga sentido en el contexto y no implique excesiva complejidad en el uso.
  27. Del lado del consumo desde GeneXus , se vera como se ven objetos externos, con alguna metadata que ayude a publicar esto para consumirlo como BCs o DPs regulares.
  28. Ahora veamos algunos ejemplos de como se esta usando REST
  29. Comparando los servicios web tradicionales , podemos ver las diferencias mas importantes con ReST: Los servicios de WS* Stack están basados en un mecanismo de llamado a procedimientos, apoyados en XML en la que se basan para describir, la interface (WSDL) , indicar los métodos y los datos (SOAP) Están fuertemente orientados a procesos. Los servicios ROA están basados en las técnicas REST usan HTTP como protocolo base y usan los métodos del HTTP Están fuertemente orientados a los Recursos
  30. Rest como opcion de publicacion de datos en forma de recursos y sus relacionesLa logica de negocios forma parte del recurso Posibilidad de componer servicios; juntando datos de diversos proveedores para potenciar mis soluciones