Desenvolvendo APIs web na 
plataforma .NET 
André Baltieri 
Community Manager & SDE 
Microsoft MVP – ASP.NET/IIS
André Baltieri 
• Microsoft MVP ASP.NET/IIS 
• Trabalha desenvolvimento Web desde 2003 
• Experiência em projetos nacionais e internacionais
@andrebaltieri 
/andrebaltieri 
andrebaltieri@hotmail.com 
/andrebaltieri
Agenda 
Por que ter uma API? 
Quando utilizar? 
Performance 
Padronização 
Segurança 
CORS
Por que ter uma API?
APIs conhecidas
Quando utilizar?
Quando devo construir uma API? 
• Para o meu legado? 
• Para o meu aplicativo? 
• Para substituir meu WCF?
Algumas considerações
Considerações 
• Somente via HTTP! 
• Web API não substitui o WCF! 
• Arquitetura NÃO TEM receita de bolo! 
• Qual seu objetivo? 
• Levante estatísticas 
• Foco na solução
Otimizando a 
performance da sua API
ORMs
Serialização JSON
Outras considerações 
• Compressão 
• Cache 
• Async 
• Múltiplos Resultados
Padronizando a API
Padronizações 
• HTTP Messages 
• Minúsculo/Maiúsculo 
• Padronizando as rotas 
• Parâmetros nas rotas 
• Limitando a leitura de dados
Segurança
Segurança 
• Autenticação via Header 
• Limitando acesso via URL ou IP 
• oAuth
CORS
Obrigado! 
Treinamento de WebAPI 
http://bit.ly/webapi-13-09 
Treinamento de AngularJS 
http://bit.ly/ng-2709 
André Baltieri 
Community Manager & SDE 
Microsoft MVP – ASP.NET/IIS
www.brsolucoesintegradas.com.br

Desenvolvendo APIs com WebAPI