SlideShare una empresa de Scribd logo
1 de 21
Serviços Web
com
WebAPI
COMO APLICAR O FUTURO DA WEB EM SEUS PROJETOS
SERVIÇOS COM WEB API....???
VOCÊS DEVEM ESTAR SE PERGUNTADO ?
VAMOS COMEÇAR NOS APRESENTADO
Jean de Lima Lopes
Desenvolvedor Web Front-End e Back-End
e Mobile
Formado em Ciências da Computação
MCP e MCSD
O QUE É UM SERVIÇO WEB
“Web Service é uma solução utilizada na integração de
sistemas e na comunicação entre aplicações diferentes”
Wikipédia
O QUE É O ASP.NET WEBAPI
ASP.NET API Web é uma estrutura que torna mais fácil
construir serviços HTTP que chegam a uma ampla gama de
clientes, incluindo os navegadores e dispositivos móveis.
API Web ASP.NET é uma plataforma para a construção de
aplicações RESTful.
O QUE É REST E RESTFUL
REST
Representational State Transfer (REST), traduzido ao pé da letra, Transferência de
Estado Representacional. É um “estilo arquitetônico”, que basicamente explora a
tecnologia existente e protocolos da Web.
Estilo arquitetônico que usa os protocolos HTTP, HTTPS, XML, JSON…
RESTFUL
É o termo normalmente usado para se referir a implementação de Web Services
que utilizam tal arquitetura.
E ISSO FUNCIONA....QUEM USA ISSO ?
ALGUMAS CONSIDERAÇÕES SOBRE OS SERVIÇOS
• Trafega as informações via HTTP
• WebAPI não substitui o WCF
• Não tem receita de bolo, molde conforme seu negócio
• Métodos Assíncronos, Cache
CONSUMINDO UM SERVIÇO WEB API
MÉTODOS BÁSICOS HTTP
GET – Leitura
POST – Inserção de uma coleção de dados
PUT – Atualização de dados
DELETE – Deletar dados
TESTES COM WEB API
Postman Chrome extension
E COMO ISSO FUNCIONA
CRIANDO UM SERVIÇO WEBAPI
TESTANDO UMA SOLITAÇÃO WEB API
Namespace principal da Aplicação
System.Web.Http
HttpGet
HttpPost
return Request.CreateResponse(HttpStatusCode.OK, "Teste Concluido com sucesso");
Tratamento de Erros
return BadRequest(“Não implementado.");
Para acessarmos nossa API
System.Web.Http.Cors
[EnableCors(origins: "*", headers: "*", methods: "*")]
Criamos uma pagina para acessar nosso serviço.
UM PEQUENO DEMO...
Versionamento com WebAPI
VERSIONAMENTO COM WEB API
Namespace principal da Aplicação
System.Web.Http
System.Web.Http.Cors
HttpGet
[EnableCors(origins: "*", headers: "*", methods: "*")]
Tratando o Versionamento
[RoutePrefix("Versionamento")]
[Route("V2")]
MAIS DEMO...
Autenticação simples com WebAPI
AUTENTICAÇÃO SIMPLES COM WEB API
Namespace principal da Aplicação
System.Web.Http
System.Web.Http.Cors
AuthorizationFilterAttribute
HttpGet
BasicAuth
[EnableCors(origins: "*", headers: "*", methods: "*")]
Fazemos uma Classe Especifica para a Autenticação
Classe deve herdar de AuthorizationFilterAttribute
Receber as informações HttpActionContext e Request.Headers.Authorization
NOT BAD
SEGURANÇA DA SUA API
Para implementar segurança na sua aplicação use algumas das
técnicas a seguir:
• Autenticação via Header – cabeçalho da solicitação
• Limita acesso por IP ou URL
• OAuth
• Sempre use SSL (Certificados Digitais)
“Ele cria um canal criptografado entre um servidor web e um navegador
(browser) para garantir que todos os dados transmitidos sejam sigilosos e seguros”
GOSTEI...
ONDE POSSO BUSCAR MAIS CONHECIMENTO
OPEN YOUR MIND....
MATERIAL DE REFERÊNCIA
WEB API 2.2
http://www.asp.net/web-api
Postman Chrome extension
http://bit.ly/postmanext
Fiddler
http://www.Telerik.com/fiddler
MAIS INFORMAÇÕES SOBRE O JEAN
JEAN DE LIMA LOPES
GITHUB
https://github.com/JeanLLopes
FACEBOOK
https://www.facebook.com/jean.lima.735
LINKEDIN
https://www.linkedin.com/pub/jean-lima-lopes/45/412/5a2
MEETUP
http://www.meetup.com/NetCoders/

Más contenido relacionado

La actualidad más candente

Palestra Signal-R
Palestra Signal-RPalestra Signal-R
Palestra Signal-Rpaponciano
 
Desevolvimento Web Client-side - AJAX
Desevolvimento Web Client-side - AJAX Desevolvimento Web Client-side - AJAX
Desevolvimento Web Client-side - AJAX Guilherme
 
Trabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do muleTrabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do muleJeison Barros
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EELuan Felipe Knebel
 
Acelerador de aplicacoes
Acelerador de aplicacoesAcelerador de aplicacoes
Acelerador de aplicacoesDualtecCloud
 
Migrando Aplicações Legadas para Nuvem
Migrando Aplicações Legadas para NuvemMigrando Aplicações Legadas para Nuvem
Migrando Aplicações Legadas para NuvemRafael Dos Santos
 
Campus Party - Desenvolvendo com ASP.NET MVC e jQuery
Campus Party - Desenvolvendo com ASP.NET MVC e jQueryCampus Party - Desenvolvendo com ASP.NET MVC e jQuery
Campus Party - Desenvolvendo com ASP.NET MVC e jQueryAlexandre Tarifa
 

La actualidad más candente (7)

Palestra Signal-R
Palestra Signal-RPalestra Signal-R
Palestra Signal-R
 
Desevolvimento Web Client-side - AJAX
Desevolvimento Web Client-side - AJAX Desevolvimento Web Client-side - AJAX
Desevolvimento Web Client-side - AJAX
 
Trabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do muleTrabalhando com anexos soap usando módulo cxf do mule
Trabalhando com anexos soap usando módulo cxf do mule
 
Desenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EEDesenvolvimento de uma API RESTful com Java EE
Desenvolvimento de uma API RESTful com Java EE
 
Acelerador de aplicacoes
Acelerador de aplicacoesAcelerador de aplicacoes
Acelerador de aplicacoes
 
Migrando Aplicações Legadas para Nuvem
Migrando Aplicações Legadas para NuvemMigrando Aplicações Legadas para Nuvem
Migrando Aplicações Legadas para Nuvem
 
Campus Party - Desenvolvendo com ASP.NET MVC e jQuery
Campus Party - Desenvolvendo com ASP.NET MVC e jQueryCampus Party - Desenvolvendo com ASP.NET MVC e jQuery
Campus Party - Desenvolvendo com ASP.NET MVC e jQuery
 

Similar a WebAPI: Como aplicar serviços RESTful em projetos

Curso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service RESTCurso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service RESTMario Sergio
 
Arquitetura Web Desacoplada - FCI/Mackenzie
Arquitetura Web Desacoplada - FCI/MackenzieArquitetura Web Desacoplada - FCI/Mackenzie
Arquitetura Web Desacoplada - FCI/MackenzieVivaldo Jose Breternitz
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo Fmdmansur
 
Chamada remota de procedimentos .net
Chamada remota de procedimentos   .netChamada remota de procedimentos   .net
Chamada remota de procedimentos .netGabii Fonseca
 
M O D E L O S L E V E S D E P R O G R A M AÇÃ O Web 2
M O D E L O S  L E V E S  D E  P R O G R A M AÇÃ O Web 2M O D E L O S  L E V E S  D E  P R O G R A M AÇÃ O Web 2
M O D E L O S L E V E S D E P R O G R A M AÇÃ O Web 2claricecopstein
 
Web Services com Apache Axis
Web Services com Apache AxisWeb Services com Apache Axis
Web Services com Apache AxisIgo Coelho
 
Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)Fernando Gonçalves
 
De Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupDe Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupWagner Roberto dos Santos
 
Web 2.0 e RIA com PHP
Web 2.0 e RIA com PHPWeb 2.0 e RIA com PHP
Web 2.0 e RIA com PHPAdler Medrado
 
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web APITrilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web APIWaldyr Felix
 
[ATC] Testando sua API com HTTPARTY e Rodando em um CI
[ATC] Testando sua API com HTTPARTY e Rodando em um CI[ATC] Testando sua API com HTTPARTY e Rodando em um CI
[ATC] Testando sua API com HTTPARTY e Rodando em um CINathanael Silva
 
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasEscalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasCelso Crivelaro
 
Monitoramento de Aplicações Web Modernas com Zabbix
Monitoramento de Aplicações Web Modernas com ZabbixMonitoramento de Aplicações Web Modernas com Zabbix
Monitoramento de Aplicações Web Modernas com ZabbixAndré Déo
 

Similar a WebAPI: Como aplicar serviços RESTful em projetos (20)

Curso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service RESTCurso Java (Parte 8) Web Service REST
Curso Java (Parte 8) Web Service REST
 
REST and JEE
REST and JEEREST and JEE
REST and JEE
 
Arquitetura Web Desacoplada - FCI/Mackenzie
Arquitetura Web Desacoplada - FCI/MackenzieArquitetura Web Desacoplada - FCI/Mackenzie
Arquitetura Web Desacoplada - FCI/Mackenzie
 
Servlets e JSP
Servlets e JSPServlets e JSP
Servlets e JSP
 
Web Services - Grupo F
Web Services - Grupo FWeb Services - Grupo F
Web Services - Grupo F
 
Chamada remota de procedimentos .net
Chamada remota de procedimentos   .netChamada remota de procedimentos   .net
Chamada remota de procedimentos .net
 
Modelos de Programação Leve
Modelos de Programação Leve Modelos de Programação Leve
Modelos de Programação Leve
 
M O D E L O S L E V E S D E P R O G R A M AÇÃ O Web 2
M O D E L O S  L E V E S  D E  P R O G R A M AÇÃ O Web 2M O D E L O S  L E V E S  D E  P R O G R A M AÇÃ O Web 2
M O D E L O S L E V E S D E P R O G R A M AÇÃ O Web 2
 
Um pouco sobre APIs
Um pouco sobre APIsUm pouco sobre APIs
Um pouco sobre APIs
 
Web Services com Apache Axis
Web Services com Apache AxisWeb Services com Apache Axis
Web Services com Apache Axis
 
Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)Desenvolvendo para web ASP.Net (Overview para iniciantes)
Desenvolvendo para web ASP.Net (Overview para iniciantes)
 
De Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações MashupDe Web Services RESTful a Aplicações Mashup
De Web Services RESTful a Aplicações Mashup
 
Web 2.0 e RIA com PHP
Web 2.0 e RIA com PHPWeb 2.0 e RIA com PHP
Web 2.0 e RIA com PHP
 
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web APITrilha .NET - REST na plataforma Microsoft com ASP.NET Web API
Trilha .NET - REST na plataforma Microsoft com ASP.NET Web API
 
[ATC] Testando sua API com HTTPARTY e Rodando em um CI
[ATC] Testando sua API com HTTPARTY e Rodando em um CI[ATC] Testando sua API com HTTPARTY e Rodando em um CI
[ATC] Testando sua API com HTTPARTY e Rodando em um CI
 
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheirasEscalando uma plataforma de e-mail transacional- aprendizado das trincheiras
Escalando uma plataforma de e-mail transacional- aprendizado das trincheiras
 
IBM WebSphere Portal
IBM WebSphere PortalIBM WebSphere Portal
IBM WebSphere Portal
 
Programação web ASP.NET Tutorial
Programação web ASP.NET TutorialProgramação web ASP.NET Tutorial
Programação web ASP.NET Tutorial
 
Servidor web
Servidor webServidor web
Servidor web
 
Monitoramento de Aplicações Web Modernas com Zabbix
Monitoramento de Aplicações Web Modernas com ZabbixMonitoramento de Aplicações Web Modernas com Zabbix
Monitoramento de Aplicações Web Modernas com Zabbix
 

WebAPI: Como aplicar serviços RESTful em projetos

  • 1. Serviços Web com WebAPI COMO APLICAR O FUTURO DA WEB EM SEUS PROJETOS
  • 2. SERVIÇOS COM WEB API....??? VOCÊS DEVEM ESTAR SE PERGUNTADO ?
  • 3. VAMOS COMEÇAR NOS APRESENTADO Jean de Lima Lopes Desenvolvedor Web Front-End e Back-End e Mobile Formado em Ciências da Computação MCP e MCSD
  • 4. O QUE É UM SERVIÇO WEB “Web Service é uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes” Wikipédia
  • 5. O QUE É O ASP.NET WEBAPI ASP.NET API Web é uma estrutura que torna mais fácil construir serviços HTTP que chegam a uma ampla gama de clientes, incluindo os navegadores e dispositivos móveis. API Web ASP.NET é uma plataforma para a construção de aplicações RESTful.
  • 6. O QUE É REST E RESTFUL REST Representational State Transfer (REST), traduzido ao pé da letra, Transferência de Estado Representacional. É um “estilo arquitetônico”, que basicamente explora a tecnologia existente e protocolos da Web. Estilo arquitetônico que usa os protocolos HTTP, HTTPS, XML, JSON… RESTFUL É o termo normalmente usado para se referir a implementação de Web Services que utilizam tal arquitetura.
  • 8. ALGUMAS CONSIDERAÇÕES SOBRE OS SERVIÇOS • Trafega as informações via HTTP • WebAPI não substitui o WCF • Não tem receita de bolo, molde conforme seu negócio • Métodos Assíncronos, Cache
  • 9. CONSUMINDO UM SERVIÇO WEB API MÉTODOS BÁSICOS HTTP GET – Leitura POST – Inserção de uma coleção de dados PUT – Atualização de dados DELETE – Deletar dados TESTES COM WEB API Postman Chrome extension
  • 10. E COMO ISSO FUNCIONA
  • 12. TESTANDO UMA SOLITAÇÃO WEB API Namespace principal da Aplicação System.Web.Http HttpGet HttpPost return Request.CreateResponse(HttpStatusCode.OK, "Teste Concluido com sucesso"); Tratamento de Erros return BadRequest(“Não implementado."); Para acessarmos nossa API System.Web.Http.Cors [EnableCors(origins: "*", headers: "*", methods: "*")] Criamos uma pagina para acessar nosso serviço.
  • 14. VERSIONAMENTO COM WEB API Namespace principal da Aplicação System.Web.Http System.Web.Http.Cors HttpGet [EnableCors(origins: "*", headers: "*", methods: "*")] Tratando o Versionamento [RoutePrefix("Versionamento")] [Route("V2")]
  • 16. AUTENTICAÇÃO SIMPLES COM WEB API Namespace principal da Aplicação System.Web.Http System.Web.Http.Cors AuthorizationFilterAttribute HttpGet BasicAuth [EnableCors(origins: "*", headers: "*", methods: "*")] Fazemos uma Classe Especifica para a Autenticação Classe deve herdar de AuthorizationFilterAttribute Receber as informações HttpActionContext e Request.Headers.Authorization
  • 18. SEGURANÇA DA SUA API Para implementar segurança na sua aplicação use algumas das técnicas a seguir: • Autenticação via Header – cabeçalho da solicitação • Limita acesso por IP ou URL • OAuth • Sempre use SSL (Certificados Digitais) “Ele cria um canal criptografado entre um servidor web e um navegador (browser) para garantir que todos os dados transmitidos sejam sigilosos e seguros”
  • 19. GOSTEI... ONDE POSSO BUSCAR MAIS CONHECIMENTO OPEN YOUR MIND....
  • 20. MATERIAL DE REFERÊNCIA WEB API 2.2 http://www.asp.net/web-api Postman Chrome extension http://bit.ly/postmanext Fiddler http://www.Telerik.com/fiddler
  • 21. MAIS INFORMAÇÕES SOBRE O JEAN JEAN DE LIMA LOPES GITHUB https://github.com/JeanLLopes FACEBOOK https://www.facebook.com/jean.lima.735 LINKEDIN https://www.linkedin.com/pub/jean-lima-lopes/45/412/5a2 MEETUP http://www.meetup.com/NetCoders/

Notas del editor

  1. Inicio da Apresentação sobre Serviços Web com WebAPI
  2. VOCÊS DEVEM ESTAR SE PERGUNTANDO QUEM SÃO ESSES CARAS ?
  3. VOCÊS DEVEM ESTAR SE PERGUNTANDO QUEM SÃO ESSES CARAS ?
  4. Interoperabilidade entre serviços Não importa com em qual linguagem ou plataforma outros desenvolvedores fazem suas aplicações você sempre pode enviar informações pra ele C#, JAVA, C, Objetive C, Python... Foi especificada com base em um protocolo que encapsula as mensagens (SOAP – Simple Object Access Protocol) com a conhecida como WSDL (Web Services Description Language)
  5. Interoperabilidade entre serviços HTTP = Protocolo para transferencia de Informações, considerada pela W3C, base para a comunicação de dados da World Wide Web. Não importa com em qual linguagem ou plataforma outros desenvolvedores fazem suas aplicações você sempre pode enviar informações pra ele C#, JAVA, C, Objetive C, Python...
  6. REST Estilo arquitetônico que usa os protocolos HTTP, HTTPS, XML, JSON RESTFUL QUANDO VOCÊ USA EM UM PROJETO
  7. Grandes empresas já expõe seus dados...Ou planejam expor.. Qual desenvolvedor não gostaria de usar a API do WhatsApp
  8. HTTP = Protocolo para transferencia de Informações, considerada pela W3C, base para a comunicação de dados da World Wide Web. WCF Service = Windows Communication Foundation é um framework para construir aplicações orientadas a serviços SOAP, originally an acronym for Simple Object Access protocol URI = Identificador Uniforme de Recursos (URI) - Uniform Resource Identifier
  9. GET,HEAD,POST,PUT,DELETE,TRACE,OPTIONS,CONNECT
  10. Criando uma API simples
  11. Criando uma API simples
  12. SSL - Seguro Socket Layer
  13. VOCÊS DEVEM ESTAR SE PERGUNTANDO QUEM SÃO ESSES CARAS ?