Web Services 2º Semestre 2009 > PUCPR > Pós em BD Bruno C. de Paula
Resumo da aula Trabalharemos hoje com o conceito de Web Services; Vamos aprender como representar de maneira mais eficiente e fácil de construir as nossas interfaces Web.
313/1/2014 Requisição Cliente X Servidor
413/1/2014 Resposta do Servidor ao Cliente
513/1/2014 !
A situação anterior é péssima situação! Necessidade de criação de N respostas diferentes, dependendo do número de tipos de cliente!
713/1/2014 !
8 ! ! Processamento Duplicado!
Web Service não é: Site para Web Genérico que disponibilize um serviço 913/1/2014
Web Service é: Arquitetura para criação de aplicações que podem ser acessadas a partir de diferentes plataformas (interoperabilidade); Identificado através de uma URL; Aplicação que recebe e retorna mensagens em formatos padrão: – XML; – XML/SOAP; – XML/RSS; – JSON /1/2014
Interoperabilidade sempre foi tentada! 1113/1/2014
Modelos de Web Service: SOAP x REST 1213/1/2014
SOAP 1313/1/2014
Ser humano 1413/1/2014
Web Service também é acessível via URL! 1513/1/2014
Padrões XML (eXtensible Markup Language): – Metalinguagem; – Linguagem para construir linguagens. SOAP (Simple Object Access Protocol): – Gramática de envio e resposta; – Descrição do formato da mensagem; Duas partes: – Cabeçalho e Payload. 1613/1/2014
Exemplo es/valida.asmx?op=valida_cpf es/valida.asmx?op=valida_cpf 1713/1/2014
1813/1/2014
1913/1/2014
2013/1/2014
HTTP Protocolo de transferência de hipertexto; Conexão, Requisição, Resposta, Fechamento. 2113/1/2014
WSDL Descrição de quais métodos um certo serviço responde; /1/2014
UDDI Universal Discovery, Description and Integration; Diretório de Web Services; Lista que permite que se encontre de forma fácil um Web Service de acordo com o interesse. 2313/1/2014
2413/1/2014
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). 2513/1/2014
REST 2613/1/2014
REST Cada url deve representar um recurso; Geralmente, via método GET, cada recurso deve ser diferenciável; NÃO TEM WSDL e nem UDDI! Retorno livre: – XML; – JSON; – Etc. 2713/1/2014
Modelo tradicional 2813/1/2014 Clientes Premier Clientes Regulares Reserva de Passagem Resposta Automática Premier Customer Representative Regular Customer Representative
Modelo REST 2913/1/2014 Clientes Premier Clientes Freqüentes Clientes Regulares Premier Premier Customer Representativ e F.F. Customer Representativ e Regular Customer Representativ e Frequent Reservation
Modelo REST 3013/1/2014 Clientes Clientes Freqüentes Clientes Regulares client air/reservations/premier flyer air/reservations/regular Premier Member Reservatio n Service Frequent Flyer Reservatio n Service Regular Member Reservatio n Service
Exemplo de chamada a um serviço 3113/1/2014 Mais exemplos:
SOAP X REST? 3213/1/2014
SOAP X REST Grande suporte; 70% Fortune /1/2014 Suporte médio;
3413/1/2014 SOAP X REST Codificação rápida; Com WSDL. 3413/1/2014 Codificação menos produtiva; Sem WSDL.
3513/1/ /1/2014 SOAP X REST Complexo; Pesado. 3513/1/2014 Simples e legível.