Web Services REST

18
Web Services REST 2º Semestre 2009 > PUCPR > Pós em BD Bruno C. de Paula

description

Web Services REST. Bruno C. de Paula. 2º Semestre 2009 > PUCPR > Pós em BD. Resumo da aula. Trabalharemos agora com os serviço s REST ; Entender uma arquitetura orientada a recursos é importante para valorizar uma arquitetura orientada a serviços. Modelos de Web Service: SOAP x REST. - PowerPoint PPT Presentation

Transcript of Web Services REST

Page 1: Web Services REST

Web ServicesREST

2º Semestre 2009 > PUCPR > Pós em BD

Bruno C. de Paula

Page 2: Web Services REST

Resumo da aulaTrabalharemos agora com os serviços REST;Entender uma arquitetura orientada a recursos é importante para valorizar uma arquitetura orientada a serviços.

Page 3: Web Services REST

Modelos de Web Service:SOAP x REST

323/10/09

Page 4: Web Services REST

SOAP

423/10/09

Page 5: Web Services REST

523/10/09

Page 6: Web Services REST

Analogia com restaurante!Você busca nas páginas amarelas

(UDDI) um restaurante para comer;Chegando lá, recebe um cardápio

(WSDL) com as opções de comida;Faz o pedido ao garçom (SOAP) que

andando, leva à cozinha (HTTP);Lá na cozinha, você não sabe o que tem

dentro (e não importa), o Cozinheiro prepara a comida (Sistema);

Depois de pronto, recebe uma resposta (SOAP). 623/10/09

Page 7: Web Services REST

Padrões para desenvolver SOAPPilha WS-*Dezenas de padrões;“BigWebServices”;Segurança: WS-Security, WS-Policy,

XML-Signature, XML-Encryption;Notificação de eventos: WS-Notification,

WS-Eventing;Endereçamento: WS-Addressing;Tolerância a falhas: WS-Reliability;Transações: WS-Transaction. 723/10/09

Page 8: Web Services REST

“BigWebServices?”

WS-* >> ASAP (Asynchronous Service Access Protocol), BPEL4WS (Business Process Execution Language), ebSOA TC (Electronic Business Service Oriented Architecture), ebXML (Electronic Business XML), International Health Continuum TC, oBIX TC , SAML (Security Assertion Markup Language), SOAP (Simple Object Access Protocol), SOAP MTOM (SOAP Message Transmission Optimization Mechanism), ranslation WS TC , UBL (Universal Business Language), UDDI (Universal Description, Discovery, and Integration), WS-Addressing, WS-AtomicTransaction, WSBPEL (Business Process Execution Language), WS-CAF (WS Composite Application Framework ), WS-CF (WS Coordination Framework), WS-Choreography , WS-CDL (Web Services Choreography Description Language), WS-Coordination, WS-CTX, WS Context, WS-Discovery (Web Services Dynamic Discovery), WSDL (WS Description Language), WSDM (WS Distributed Management), WS-Enumeration, WS-Eventing, WS-Federation (Web Services Federation Language), WSIL (WS Inspection Language), WS-Manageability, WS-MetadataExchange (Web Services Metadata Exchange), WS-MessageDelivery, WS-Notification, WS-Policy, WS-Provisioning, WS-Reliability, WS Reliable Messaging, WS-RF (WS-Resource Framework), WS-Reliablemessaging , WSRP (WS Remote Portals), WS-Security, WS-SecureConversation, WS-SecurityPolicy, WS Security Services TC, WS-TM (WS Transaction Management), WS-Transfer, WS-Trust, XML-Encryption, XML-Signature

823/10/09

Page 9: Web Services REST

REST

923/10/09

Page 10: Web Services REST

RESTCada url deve representar um recurso

(ROA);Geralmente, via método GET, cada

recurso deve ser diferenciável;Usa os verbos HTTP;NÃO TEM WSDL e nem UDDI! Retorno livre:

• XML;• JSON;• Etc.

1023/10/09

Page 11: Web Services REST

Exemplo de chamada a um serviço

1123/10/09

Mais exemplos:http://local.yahooapis.com/MapsService/V1/mapImage?appid=YD-4g6HBf0_JX0yq2IsdnV1Ne9JTpKxQ3Miew--&city=Curitibahttp://json-random.appjet.net/?num=5&min=10&max=20&callback=randomcallbackhttp://iplocationtools.com/ip_query_country.php?ip=74.125.45.100http://www.spore.com/static/model/500/226/147/500226147573.xml...

Page 12: Web Services REST

Verbos HTTP

Page 13: Web Services REST

Exemplo voltado para Banco de Dados – Amazon S3

Serviço de armazenamento e transferência de arquivos sob demanda;

1323/10/09

Amazon's Simple Storage Service;

Page 14: Web Services REST

Exemplo voltado para Banco de Dados – Amazon S3 - ComandosGET / - Lista seus depósitos de dados;GET /depósito – Lista objetos de um

depósito;PUT /depósito – Cria um depósito;GET /depósito/objeto – Obtém o valor e

metadados sobre um objeto;DELETE /depósito/objeto – Exclui um

objeto.Verbos simples, voltados à manipulação

de recursos! 1423/10/09

Page 15: Web Services REST

Programação de serviços REST

Java: JSR-311 (JAX-RS), RestLet, Apache CFX, GlassFish Jersey, Gomba …

.Net: WCF REST Starter Kit;...Você não precisa de nenhum kit para

implementar REST, é só entender como desenvolver um aplicativo Web!

1523/10/09

Page 16: Web Services REST

Lembre-se:este não é um curso de Programação!

1623/10/09

Page 18: Web Services REST

Referência sugerida

RESTFul Serviços Web – Leonard Richardson & Sam Ruby

1823/10/09