SlideShare uma empresa Scribd logo
Web Services




Paulo Neto, Kawe Ramon
Web Services
Motivação.

•   Integração entre serviços distintos.


•   Padronização no retorno de cada requisição de
    serviços.(WSDL)


•   Independência de tecnologia de desenvolvimento e
    plataformas.
Web Services

Motivação

•   Os Web Services estão acima de plataformas,
    bancos de dados, e linguagens de programação,
    livrando completamente os desenvolvedores das
    limitações previamente encontradas na interface
    entre aplicativos.
Web Services
O Que é um Web Service?

   Segundo       a       W3C(World     Wide      Web
    Consortium),podemos defini-lo como: um sistema de
    software      projetado    para      suportar   a
    interoperabilidade entre máquinas sobre rede.

   Um serviço web é um serviço que está publicado na
    web
    e disponível para qualquer pessoa/sistema possa
    interagir com ele.
Web Services
Integração e Reuso

•   Web Services permitem o compartilhamento de
    Dados entre sistemas distintos (implementações
    diferentes).


•   Antes dos Web Services já existia interação entre
    aplicações, a vantagem de se utilizar WS é o Reuso.
Web Services
Descritores de Serviço

• WSDL - Web Services Description Language.
     Linguagem baseada em XML recomendada pelo
W3C
  que tem por objetivo descrever web services através
  dos métodos de requisição HTTP, passagem de
  valores e formas de retorno.
Web Services
Páginas Amarelas de Serviços

•   Universal Description, Discovery and Integration
    (UDDI)
    O UDDI atua como um diretório de arquivos
    descritores de serviços.
Web Services
    Implementação
•   A implementação de web services promoveu não só
    mudanças na interação entre sistemas, mas na
    própria arquitetura de tais sistemas; SOA (Arquitetura
    orientada a Serviço) é a prova concreta disso.


•   SOAP: Protocolo especificado para a troca de
    mensagens baseadas em XML em redes TCP/IP.
    SOAP é um acrônimo de Simple Object Access
    Protocol e é fundamentalmente usado por web
    services, para a transmissão de mensagens e
    requisição remota de processos.
Web Services
    Implementação

•   É importante saber que as idéias fundamentais que
    construíram os web services provêm de tecnologias e
    produtos anteriores, entre eles estão CORBA, DCOM
    e RPC/RMI. Além dessas iniciativas prévias, existem
    iniciativas atuais que também possibilitam o uso de
    serviços pela Internet com eficiência. A principal
    dessas       iniciativas  é     denominada    REST
    (Representational State Transfer).
Arquitetura REST
•   REST é uma abreviação de Representation State
    Transfer, ou traduzindo, Transferência de Estado
    Representacional
•   Principais características arquiteturais incorporadas:
•   Separação de responsabilidade entre as camadas
    cliente servidor
•   Comunicações independentes (stateless)
•   Uso de cache (para eliminar algumas interações
    desnecessárias entre cliente e servidor)
•   Utilização de uma interface uniforme entre os
    componentes
Arquitetura REST
•   Essas características quando aplicadas à um web
    service melhora o desempenho do sistema em geral
•   Se comparar com o protocolo SOAP, diminui o tempo
    de resposta das aplicações e seu uso gera uma
    maior flexibilidade e simplicidade
•   REST é composto por um conjunto de elementos
    arquiteturais, as três classes de elementos:
    Elementos de Dados, Conectores e Componentes
REST - Elementos de Dados
•   São os elementos que contém a informação a ser
    usada e transformada
•   Recursos: Conceito-chave da arquitetura REST, é
    qualquer informação que possa receber um nome
•   Identificadores: Identifica um recurso específico
    envolvido em uma interação entre clientes e
    servidores. REST usa o URI (Unified Resourse
    Identifier) como identificador de recursos
•   Representações: São usadas para capturar o estado
    atual e o estado desejado de um recurso solicitado.
    Na prática são sequências de bytes acrescidas de
    meta-dados
REST - Componentes
•   São elementos que usam ou transformam a
    informação, são caracterizados de acordo com o
    papel que exercem
•   Servidor de Origem (trata de requisições de um
    cliente)
•   Proxy e Gateway, utilizados para permitir o
    encaminhamento das requisições e respostas.
•   Agente do usuário, inicia a requisição e, logo em
    seguida, se torna o destino final de uma resposta
REST - Conectores
•   São elementos que interligam outros elementos. Rest
    usa conectores para encapsular a atividade de
    acesso aos recursos e para transferir as suas
    representações
•   Cliente e Servidor, são responsáveis pelo acesso aos
    recursos
•   Cache, armazena as respostas passíveis de cache
•   Resolver é responsável pela conversão de um URI
    em um endereço de rede
•   Túnel cria um caminho virtual para o tráfego dos
    recursos
REST - Métodos Nativos HTTP
•   Para padronizar o formato das representações de um
    recurso, REST utiliza uma interface uniforme de
    componentes que é aplicada através da utilização
    dos métodos nativos do protocolo HTTP
•   Principais métodos HTTP utilizados em aplicações
    RESTFul:
JSON (JavaScript Object Notation)
•   Modelo para armazenamento e transmissão de
    informações no formato texto
•   Tem a capacidade de estruturar informações de uma
    forma bem mais compacta do que XML, tornando
    mais rápido o parsing dessas informações
•   É um formato texto e completamente independente
    de linguagem, pois usa convenções que são
    familiares às linguagens C e familiares.
•   Dividido em duas estruturas:
•   Uma coleção de pares nome/valor
•   Lista ordenada de valores: array
JSON
•   Um Objeto com estrutura complexa possui
    arrays, hierarquias e Informações opcionais
•   Fornece a capacidade de atribuir métodos de
    execução (funções) que estarão diretamente ligadas
    ao objeto criado.
•   Sua forma de aplicação assemelha-se a um objeto
    abstraído do mundo real o qual trabalhamos em POO
JSON x XML
•   Vantagens
    o Leitura mais simples
    o Analisador (parsing) mais fácil
    o Suporta objetos
    o Velocidade maior na execução e transporte de
       dados
    o Arquivo com tamanho reduzido
•   Desvantagens
    o As informações representadas em JSON não
       podem ser validadas por um esquema, Já em
       XML, é possível validar através por DTD e XML
       Schema
JSON x XML - Sintaxe
Sintaxe XML:
  <?xml version="1.0" encoding="UTF-8"?>
     <id>1id>
     <nome>Alexandre Gamanome>
     <endereco>R. Qualquerendereco>


Sintaxe JSON:
{"id":1,"nome":"Alexandre Gama", "endereco":"R.
Qualquer"}

Mais conteúdo relacionado

PPTX
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Renato Groff
 
PDF
Introdução a Web Services
Fabio Leal
 
PPTX
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Renato Groff
 
PPT
Web Services Xml
UFMG
 
PDF
Arquitetura orientada a serviços (SOA)
Helio Henrique L. C. Monte-Alto
 
PPT
SOA - Padrões Associados
alinebicudo
 
PPT
Webservices e Xml
sys10
 
PDF
WebServices intro
Cristian R. Silva
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Renato Groff
 
Introdução a Web Services
Fabio Leal
 
Serviços na Plataforma .NET (SOA, REST, Microservices, WCF, Web API)
Renato Groff
 
Web Services Xml
UFMG
 
Arquitetura orientada a serviços (SOA)
Helio Henrique L. C. Monte-Alto
 
SOA - Padrões Associados
alinebicudo
 
Webservices e Xml
sys10
 
WebServices intro
Cristian R. Silva
 

Mais procurados (20)

PDF
SOA e Web Services
sergiocrespo
 
PPTX
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Renato Groff
 
PPT
Web Service - XML
blogspheregroup
 
PPTX
Soap x rest
Anderson Ricardo
 
PPT
WebServices-XML
blogspheregroup
 
PPTX
Sistemas Distribuidos Java
limadavi
 
PPTX
Webservice
Chromus Master
 
PPT
Apresentação servidores de aplicação
Helen Picoli
 
PDF
Introdução à Arquitetura Web
Breno Vitorino
 
PDF
Arquiteturas SOA, WOA e REST
lucasbarsand
 
PDF
Mini Curso Web Services com PHP
elliando dias
 
PPT
Esb Soa AplicaçõEs
Frank Rodriguez Gonzalez
 
PDF
Técnicas de Programação para a Web
Luiz Cláudio Silva
 
PDF
Servidor de Autenticação Centralizada com OpenLDAP - Thiago Finardi
Tchelinux
 
KEY
Servidor web
Raphaela Rocha
 
PPT
Web Services Rest
Bruno Luiz Pereira da Silva
 
PDF
Criando e consumindo webservice REST com PHP e JSON
Marcio Junior Vieira
 
PPT
Servidores de Aplicações
Wellington Oliveira
 
PPT
Web Services - Grupo F
mdmansur
 
PDF
Web service
Junior Moraes
 
SOA e Web Services
sergiocrespo
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Renato Groff
 
Web Service - XML
blogspheregroup
 
Soap x rest
Anderson Ricardo
 
WebServices-XML
blogspheregroup
 
Sistemas Distribuidos Java
limadavi
 
Webservice
Chromus Master
 
Apresentação servidores de aplicação
Helen Picoli
 
Introdução à Arquitetura Web
Breno Vitorino
 
Arquiteturas SOA, WOA e REST
lucasbarsand
 
Mini Curso Web Services com PHP
elliando dias
 
Esb Soa AplicaçõEs
Frank Rodriguez Gonzalez
 
Técnicas de Programação para a Web
Luiz Cláudio Silva
 
Servidor de Autenticação Centralizada com OpenLDAP - Thiago Finardi
Tchelinux
 
Servidor web
Raphaela Rocha
 
Web Services Rest
Bruno Luiz Pereira da Silva
 
Criando e consumindo webservice REST com PHP e JSON
Marcio Junior Vieira
 
Servidores de Aplicações
Wellington Oliveira
 
Web Services - Grupo F
mdmansur
 
Web service
Junior Moraes
 
Anúncio

Semelhante a Web Services (20)

PDF
A Estrutura de um Web Service
Paulo Vitor Antonini Orlandin
 
PPTX
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Renato Groff
 
PDF
UM ESTUDO SOBRE SOA
Juliana Cindra
 
PDF
Desenvolvimento de uma API RESTful com Java EE
Luan Felipe Knebel
 
PPTX
Sistemas Distribuídos - Aula 07 - Servicos Web
Arthur Emanuel
 
PDF
Arquitetura e Integração de sistemas
Jether Rodrigues
 
PPTX
07182803-4929-40ED-AB7E-2C5F9B6B90DD.pptx
edu14ca1
 
PDF
WebServices
Frederico Madeira
 
PDF
Soa Woa Rest
Paulo Rezende
 
PPT
Soa – Woa Rest Arquiteturas
rafaslide
 
PDF
Sistemas Distribuídos - Big Web Services
Keyo Galvao
 
PPTX
Palestra Sobre REST
Paulo José Almeida
 
PPTX
Apresentação web services
Vitor Fonseca
 
PPTX
Soa conceitos
João Abussamra Neto
 
PDF
Maratona JBoss 2010 - JBossWS
Dextra
 
PDF
JustJava 2005: Web Services em Java com o JWSDP 1.5
Helder da Rocha
 
PDF
201406Carvalho
Afonso Pra
 
PDF
[Ass] arquiteturas soa, woa, e rest
assufmg
 
PDF
Web services
Sérgio Rocha
 
PPS
Web Sphere Application Server
Fabricio Carvalho
 
A Estrutura de um Web Service
Paulo Vitor Antonini Orlandin
 
Arquitetura de Serviços - SOA, REST, Microservices e a plataforma .NET
Renato Groff
 
UM ESTUDO SOBRE SOA
Juliana Cindra
 
Desenvolvimento de uma API RESTful com Java EE
Luan Felipe Knebel
 
Sistemas Distribuídos - Aula 07 - Servicos Web
Arthur Emanuel
 
Arquitetura e Integração de sistemas
Jether Rodrigues
 
07182803-4929-40ED-AB7E-2C5F9B6B90DD.pptx
edu14ca1
 
WebServices
Frederico Madeira
 
Soa Woa Rest
Paulo Rezende
 
Soa – Woa Rest Arquiteturas
rafaslide
 
Sistemas Distribuídos - Big Web Services
Keyo Galvao
 
Palestra Sobre REST
Paulo José Almeida
 
Apresentação web services
Vitor Fonseca
 
Soa conceitos
João Abussamra Neto
 
Maratona JBoss 2010 - JBossWS
Dextra
 
JustJava 2005: Web Services em Java com o JWSDP 1.5
Helder da Rocha
 
201406Carvalho
Afonso Pra
 
[Ass] arquiteturas soa, woa, e rest
assufmg
 
Web services
Sérgio Rocha
 
Web Sphere Application Server
Fabricio Carvalho
 
Anúncio

Último (16)

PPTX
Gestão de Mudanças - Os maiores desafios da Gestão de Mudanças e Gestão de Pr...
Gateware Group
 
PPTX
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
PPTX
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
PPTX
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
PDF
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
PPTX
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
PPTX
Gestão de Mudanças - Fases do processo de mudança organizacional
Gateware Group
 
PPTX
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
PPTX
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
PPTX
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
PPTX
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
PPTX
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PPTX
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
PPTX
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
PDF
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
PPTX
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 
Gestão de Mudanças - Os maiores desafios da Gestão de Mudanças e Gestão de Pr...
Gateware Group
 
Curso de Java 6 - (Números, Data e Hora).pptx
Anderson Maciel
 
Curso de Java 1 - (Introdução Geral).pptx
Anderson Maciel
 
Curso de Java 5 - (Strings) Tipo de Dados.pptx
Anderson Maciel
 
Explorando o Futuro do Corpo: Implantes Neurais e o Biohacking dos Sentidos
cooperliora
 
Computacao-e-Tecnologias-Digitais-Por-Que-Aprender.pptx
RobertaOliveiradaFon1
 
Gestão de Mudanças - Fases do processo de mudança organizacional
Gateware Group
 
Curso de Java 2 - (PrimeiroPrograma, Variáveis, Tipos e Operadores.pptx
Anderson Maciel
 
Curso de Java 3 - (Estruturas de Controle, Decisão, Loop, Procedimento).pptx
Anderson Maciel
 
Desenvolvimento-de-Produtos-Inovadores.pptx
ssuser1d7565
 
Curso de Java 4 - (Orientação a Objetos).pptx
Anderson Maciel
 
21 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
aplicativopenseira.pptx Aplicativo que organiza Pensamentos - Peça Publicitária
StelaNorie1
 
22 - Lógica de Programação com Portugol.pptx
Anderson Maciel
 
Certificado em Redes Neurais Artificiais em Python
CaioSilva506151
 
Curso de Java 7 - (ArrayList, Collections,(Set, List, Queue, Map)).pptx
Anderson Maciel
 

Web Services

  • 2. Web Services Motivação. • Integração entre serviços distintos. • Padronização no retorno de cada requisição de serviços.(WSDL) • Independência de tecnologia de desenvolvimento e plataformas.
  • 3. Web Services Motivação • Os Web Services estão acima de plataformas, bancos de dados, e linguagens de programação, livrando completamente os desenvolvedores das limitações previamente encontradas na interface entre aplicativos.
  • 4. Web Services O Que é um Web Service?  Segundo a W3C(World Wide Web Consortium),podemos defini-lo como: um sistema de software projetado para suportar a interoperabilidade entre máquinas sobre rede.  Um serviço web é um serviço que está publicado na web e disponível para qualquer pessoa/sistema possa interagir com ele.
  • 5. Web Services Integração e Reuso • Web Services permitem o compartilhamento de Dados entre sistemas distintos (implementações diferentes). • Antes dos Web Services já existia interação entre aplicações, a vantagem de se utilizar WS é o Reuso.
  • 6. Web Services Descritores de Serviço • WSDL - Web Services Description Language. Linguagem baseada em XML recomendada pelo W3C que tem por objetivo descrever web services através dos métodos de requisição HTTP, passagem de valores e formas de retorno.
  • 7. Web Services Páginas Amarelas de Serviços • Universal Description, Discovery and Integration (UDDI) O UDDI atua como um diretório de arquivos descritores de serviços.
  • 8. Web Services Implementação • A implementação de web services promoveu não só mudanças na interação entre sistemas, mas na própria arquitetura de tais sistemas; SOA (Arquitetura orientada a Serviço) é a prova concreta disso. • SOAP: Protocolo especificado para a troca de mensagens baseadas em XML em redes TCP/IP. SOAP é um acrônimo de Simple Object Access Protocol e é fundamentalmente usado por web services, para a transmissão de mensagens e requisição remota de processos.
  • 9. Web Services Implementação • É importante saber que as idéias fundamentais que construíram os web services provêm de tecnologias e produtos anteriores, entre eles estão CORBA, DCOM e RPC/RMI. Além dessas iniciativas prévias, existem iniciativas atuais que também possibilitam o uso de serviços pela Internet com eficiência. A principal dessas iniciativas é denominada REST (Representational State Transfer).
  • 10. Arquitetura REST • REST é uma abreviação de Representation State Transfer, ou traduzindo, Transferência de Estado Representacional • Principais características arquiteturais incorporadas: • Separação de responsabilidade entre as camadas cliente servidor • Comunicações independentes (stateless) • Uso de cache (para eliminar algumas interações desnecessárias entre cliente e servidor) • Utilização de uma interface uniforme entre os componentes
  • 11. Arquitetura REST • Essas características quando aplicadas à um web service melhora o desempenho do sistema em geral • Se comparar com o protocolo SOAP, diminui o tempo de resposta das aplicações e seu uso gera uma maior flexibilidade e simplicidade • REST é composto por um conjunto de elementos arquiteturais, as três classes de elementos: Elementos de Dados, Conectores e Componentes
  • 12. REST - Elementos de Dados • São os elementos que contém a informação a ser usada e transformada • Recursos: Conceito-chave da arquitetura REST, é qualquer informação que possa receber um nome • Identificadores: Identifica um recurso específico envolvido em uma interação entre clientes e servidores. REST usa o URI (Unified Resourse Identifier) como identificador de recursos • Representações: São usadas para capturar o estado atual e o estado desejado de um recurso solicitado. Na prática são sequências de bytes acrescidas de meta-dados
  • 13. REST - Componentes • São elementos que usam ou transformam a informação, são caracterizados de acordo com o papel que exercem • Servidor de Origem (trata de requisições de um cliente) • Proxy e Gateway, utilizados para permitir o encaminhamento das requisições e respostas. • Agente do usuário, inicia a requisição e, logo em seguida, se torna o destino final de uma resposta
  • 14. REST - Conectores • São elementos que interligam outros elementos. Rest usa conectores para encapsular a atividade de acesso aos recursos e para transferir as suas representações • Cliente e Servidor, são responsáveis pelo acesso aos recursos • Cache, armazena as respostas passíveis de cache • Resolver é responsável pela conversão de um URI em um endereço de rede • Túnel cria um caminho virtual para o tráfego dos recursos
  • 15. REST - Métodos Nativos HTTP • Para padronizar o formato das representações de um recurso, REST utiliza uma interface uniforme de componentes que é aplicada através da utilização dos métodos nativos do protocolo HTTP • Principais métodos HTTP utilizados em aplicações RESTFul:
  • 16. JSON (JavaScript Object Notation) • Modelo para armazenamento e transmissão de informações no formato texto • Tem a capacidade de estruturar informações de uma forma bem mais compacta do que XML, tornando mais rápido o parsing dessas informações • É um formato texto e completamente independente de linguagem, pois usa convenções que são familiares às linguagens C e familiares. • Dividido em duas estruturas: • Uma coleção de pares nome/valor • Lista ordenada de valores: array
  • 17. JSON • Um Objeto com estrutura complexa possui arrays, hierarquias e Informações opcionais • Fornece a capacidade de atribuir métodos de execução (funções) que estarão diretamente ligadas ao objeto criado. • Sua forma de aplicação assemelha-se a um objeto abstraído do mundo real o qual trabalhamos em POO
  • 18. JSON x XML • Vantagens o Leitura mais simples o Analisador (parsing) mais fácil o Suporta objetos o Velocidade maior na execução e transporte de dados o Arquivo com tamanho reduzido • Desvantagens o As informações representadas em JSON não podem ser validadas por um esquema, Já em XML, é possível validar através por DTD e XML Schema
  • 19. JSON x XML - Sintaxe Sintaxe XML: <?xml version="1.0" encoding="UTF-8"?> <id>1id> <nome>Alexandre Gamanome> <endereco>R. Qualquerendereco> Sintaxe JSON: {"id":1,"nome":"Alexandre Gama", "endereco":"R. Qualquer"}