Guia de Linguagem

ASP.NET Web API


Neste Guia de Referência você encontrará o conteúdo que precisa para aprender a desenvolver web services RESTful com o framework ASP.NET Web API e a linguagem C#.

Introdução

ASP.NET Web API é o framework da plataforma .NET que nos possibilita desenvolver um dos requisitos mais importantes a qualquer projeto web moderno: web services RESTful. A partir dele, e utilizando qualquer linguagem compatível com essa plataforma, como a linguagem C# - a qual recomendamos -, torna-se viável a implementação de sistemas cujo back-end pode ser desacoplado do front-end, facilitando o alcance a diferentes plataformas, a implantação de soluções mais adequadas para a nuvem e, até mesmo, a construção de soluções para a Internet das Coisas.

Neste Guia de Referência você encontrará um conteúdo completo, formado por cursos, devcasts, artigos e documentações, que lhe auxiliará desde os primeiros passos nesse importante recurso, até a implementação de soluções completas, que atendam na íntegra as necessidades do mercado.

Antes de iniciar os estudos sobre uma tecnologia é importante saber o que de fato ela é e para que serve. Isso lhe ajudará a decidir se ela é realmente adequada às suas necessidades, se ela é realmente aquilo que você precisa. Pensando nessa etapa, recomendamos que assista ao curso abaixo:

Você chegou até aqui, mas ainda tem dúvidas ou não sabe o que é REST ou o que são web services RESTful? Assista também ao seguinte curso:

Além disso, é importante saber a diferença entre REST e SOAP, uma vez que aqui nos concentraremos no padrão REST, mas você pode se deparar com web services SOAP em sua carreira e estudos. Para isso, consulte o artigo abaixo:

Primeiros passos

Uma vez que os conceitos iniciais estejam claros, você pode conferir os materiais abaixo, que lhe introduzirão ao framework ASP.NET Web API e seus recursos mais básicos e fundamentais:

Documentação

Nesta seção você encontrará conteúdos criados com o intuito de apresentar conceitos e recursos fundamentais sobre o modelo arquitetural REST e ASP.NET Web API. Utilize esse material para consulta rápida:

REST

ASP.NET Web API

Paginação

A paginação é um recurso fundamental em web services. Por um lado essa funcionalidade permite ao cliente solicitar apenas uma quantidade limitada de registros ao servidor. Por outro, permite que o servidor limite as requisições recebidas, evitando a sobrecarga de processamento.

Validações

A validação é um procedimento fundamental para garantir a integridade dos dados recebidos e armazenados pelas aplicações. Quando tratamos de web services RESTful, nem sempre o desenvolvimento do front-end estará sob nossa responsabilidade, logo precisamos garantir uma boa validação no back-end, pois não temos controle sobre as validações realizadas nas aplicações clientes.

Em .NET as validações podem ser realizadas de várias formas. Uma delas é utilizando a biblioteca FluentValidation, que você pode conhecer em maiores detalhes no curso abaixo:

Testes

Testar nossas aplicações é fundamental para garantir que elas estão funcionando conforme o esperado. No caso de web services, o teste é feito basicamente com o envio de requisições ao servidor que hospeda o serviço e a análise do que é retornado. Para serviços RESTful isso pode ser feito com o Postman, conteúdo que exploramos no vídeo abaixo:

Cache

Cache é um recurso que nos permite melhorar a performance e resiliência das nossas aplicações. No link abaixo você aprenderá uma forma simples de implementar essa técnica em soluções ASP.NET Web API:

Publicação

Após o processo de desenvolvimento e testes é natural a publicação das nossas aplicações para que elas possam ser acessadas através da internet. Para isso existem diversos provedores de hospedagem, cada um com suas características. Caso você opte por utilizar o Microsoft Azure, o curso abaixo vai lhe ajudar nesse processo de publicação:

Consumindo web services

Após aprender a criar web services RESTful, outra etapa fundamental é saber como consumi-los. É dessa forma que interagimos com os serviços implantados no servidor para cadastrar, atualizar, consultar e excluir dados, assim como realizar operações que tratam da lógica de negócio.

Ao fazer isso, estamos criando a aplicação cliente para os nossos serviços. Lembre-se que devido às vantagens que uma Web API nos fornece, podemos implementar essa aplicação com diferentes linguagens, frameworks e para diferentes plataformas, como ilustra a imagem abaixo:

Arquitetura de sistemas com web services
Figura 1. Arquitetura de sistemas com web services

Para aprender como criar sistemas em C# que consomem web services RESTful, acesse:

.NET

Por sua vez, caso sua necessidade seja criar aplicações cliente utilizando tecnologias como AngularJS ou outros frameworks JavaScript, acesse:

AngularJS

Outros frameworks JavaScript

Ficou com alguma dúvida?