Use o código e tenha 10% de desconto!

REST Construa API's inteligentes de maneira simples

Alexandre Saudate

Conteúdo

De alguma maneira, os sistemas modernos precisam se integrar com outros sistemas, seja para coletar dados, enviar informações, autenticação ou várias outras funcionalidades.

Neste livro, Alexandre Saudate ensina como implementar APIs REST, que são simples e fáceis de manter, indo desde o básico dos formatos de dados como XML e JSON, passando por uma implementação rústica de um serviço e evoluindo para uso da poderosa especificação Java, o JAX-RS. Você ainda vai aprender técnicas avançadas, como trabalhar com as Hypermedias, criando fluxos inteligentes nos seus serviços. Veja também como realizar autenticação através do OAuth e muito mais!

 

Sumário

  • 1 Por que utilizar REST?
  • 1.1 HTML tradicional versus REST
  • 1.2 Web services
  • 1.3 REST
  • 1.4 Como elaborar a URL
  • 1.5 Desenvolvendo um protótipo de web service REST
  • 1.6 Avançando o protótipo de web service REST
  • 1.7 Conclusão
  • 2 O protocolo HTTP
  • 2.1 Os fundamentos do HTTP
  • 2.2 Métodos HTTP
  • 2.3 Idempotência: o efeito de sucessivas invocações
  • 2.4 Segurança dos métodos
  • 2.5 Tipos de passagem de parâmetros
  • 2.6 Cabeçalhos HTTP
  • 2.7 Media Types
  • 2.8 Códigos de status
  • 2.9 Conclusão
  • 3 Conceitos de REST
  • 3.1 Semânticas de recursos
  • 3.2 Interação por métodos
  • 3.3 Representações distintas
  • 3.4 Uso correto de status codes
  • 3.5 HATEOAS
  • 3.6 Boas práticas de passagem de parâmetros
  • 3.7 Conclusão
  • 4 Tipos de dados
  • 4.1 Aprenda a lidar com XML
  • 4.2 Ferramental XML: conhecendo os XML Schemas
  • 4.3 Trabalhando com XML utilizando JAXB
  • 4.4 Testando o XML gerado
  • 4.5 Utilizando JAXB sem um XML Schema
  • 4.6 JSON
  • 4.7 Trabalhando com JSON utilizando JAXB
  • 4.8 Validação de JSON com JSON Schema
  • 4.9 Conclusão
  • 5 Implementando serviços REST em Java com Servlets
  • 5.1 Uma implementação com Servlets
  • 5.2 Implementando negociação de conteúdo
  • 5.3 Implementando a busca por uma cerveja específica
  • 5.4 Implementando a criação de um recurso
  • 5.5 Implementando negociação de conteúdo na criação do recurso
  • 5.6 Conclusão
  • 6 Explore o JAX-RS
  • 6.1 Configurando o JAX-RS
  • 6.2 Criando o primeiro serviço JAX-RS
  • 6.3 O que aconteceu?
  • 6.4 Desenvolvendo os métodos de consulta de Cervejas
  • 6.5 Implementando o método de criação de novas cervejas
  • 6.6 Métodos para atualizar e apagar recursos
  • 6.7 Implementando links HATEOAS
  • 6.8 Implementando paginação na consulta
  • 6.9 Adaptando o código para retornar JSON
  • 6.10 Implementando retorno de dados binários
  • 6.11 Implementando consumo de dados binários
  • 6.12 Conclusão
  • 7 REST, client-side
  • 7.1 JavaScript
  • 7.2 JAX-RS
  • 7.3 Implementação dos clientes com o RESTEasy
  • 7.4 WADL
  • 7.5 Conclusão
  • 8 Segurança REST
  • 8.1 Segurança contra o quê?
  • 8.2 Proteção contra interceptação com HTTPS
  • 8.3 Implantando SSL no nosso servidor
  • 8.4 HTTP Basic
  • 8.5 Modificando o cliente
  • 8.6 HTTP Digest
  • 8.7 OAuth
  • 8.8 Implementando acesso ao Twitter através do Jersey
  • 8.9 Construindo um servidor OAuth
  • 8.10 Conclusão
  • 9 Tópicos avançados de serviços REST
  • 9.1 Busca por exemplos
  • 9.2 Transformação de funções em REST — validação de CPF/CNPJ
  • 9.3 Transformação de funções em REST — envio de e-mails
  • 9.4 Serviços assíncronos
  • 9.5 Atualizações concorrentes
  • 9.6 Cacheamento de resultados
  • 9.7 Testes automatizados de serviços REST
  • 9.8 Criando parsers customizados de dados
  • 9.9 Conclusão
  • 10 Perguntas frequentes sobre REST
  • 10.1 É possível usar REST em larga escala?
  • 10.2 Como gerenciar múltiplas versões de serviços?
  • 10.3 Quantos e quais links HATEOAS devo inserir nos meus recursos?
  • 10.4 Quando eu devo preferir utilizar REST ao invés de WS?
  • 10.5 Quando eu devo preferir utilizar REST ao invés de comunicação nativa da minha linguagem de programação?
  • 11 Conclusão

veja mais detalhes

Autor

Alexandre Saudate

Alexandre Saudate é graduado em Sistemas de Informação pela Universidade de São Paulo (USP). Trabalha com desenvolvimento desde 2005 e com SOA desde 2008. Desde então, tem trabalhado com pesquisa e desenvolvimento sobre esse tipo de arquitetura e também com projetos envolvendo tecnologias de ponta, para empresas como Porto Seguro, Serasa, Porto de Santos, iG e outras. Foi instrutor Oracle e, mais recentemente, se tornou instrutor da SOA|Expert, uma escola especializada no assunto. Hoje, é especialista em projetos de integração SOA e/ou Cloud Computing.

Dados do produto

Número de páginas:
315
ISBN:
978-85-66250-37-4

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter