O que exatamente é “API da Web” no ASP.Net MVC4?

15

Eu sei o que é uma API da Web.
Eu escrevi API's em vários idiomas (inclusive no MVC3).
Eu também sou bem praticado em ASP.Net.
Acabei de descobrir que MVC4 tem "API Web" e sem passar pelos exemplos de vídeo não consigo encontrar uma boa explicação do que exatamente é.
Da minha experiência anterior, as tecnologias da Microsoft (especialmente ASP.Net) têm uma tendência a ter um conceito simples e envolvê-lo em um monte de sobrecarga inútil que é feito para tornar tudo "mais fácil". Alguém pode me explicar o que é exatamente a API da Web no MVC4? Por que eu preciso disso? Por que não posso simplesmente escrever minha própria API?

    
por James P. Wright 12.08.2012 / 18:22
fonte

5 respostas

16

A API da Web do ASP.NET é uma estrutura "sem opinião" para criar o serviço HTTP , independentemente do REST ou do RPC. É a melhor implementação da Microsoft da RFC 2616 (especificação HTTP).

Certamente você pode criar sua própria API, mas a API da Web do ASP.NET:

  • Criada com base no modelo Boneca Russa que permite para módulos semelhantes a legos a serem adicionados ao pipeline HTTP
  • Torna o cidadão de primeira classe HTTP, portanto, todos os cabeçalhos comuns são strongmente tipificados (não apenas o valor do nome) e ajudam a analisá-los
  • Permite a hospedagem do ASP.NET (IIS) ou auto-hospedagem
  • suporta negociação de conteúdo, tipos de mídia ...
  • É assíncrono de cima para baixo
  • Utiliza uma abordagem semelhante para clientes com HttpClient
por 16.09.2012 / 19:53
fonte
6

A nova API Web da Microsoft é, como o próprio nome sugere, sobre como escrever APIs que podem ser acessadas pela Web, com um empenhado em REST.

Rick Strahl recentemente escreveu sobre isso e tem uma boa análise sobre quando usar o MVC vs Web API.

Coisas como a negociação de conteúdo, vários formatos integrados e muito mais.

    
por 12.08.2012 / 21:35
fonte
6

Resumindo: O ASP.NET Web API está tornando o REST um cidadão de primeira classe no .NET , que o WCF não conseguiu abraçar. Como você deve saber, a API da Web ASP.NET é uma estrutura for building web APIs no topo do .NET Framework.

Uma das maiores frustrações que tivemos como desenvolvedores web foi enfrentar as intermináveis configurações do WCF. Quero dizer, o WCF é ótimo, mas não tem adotado o REST desde a estrutura da API da Web do WCF Havia algo chamado REST Starter Kit, mas acabou morto.

No entanto, o ASP.NET Web API é uma estrutura de próxima geração que facilita a criação de serviços HTTP que atingem uma ampla gama de clientes, como navegadores e dispositivos móveis. É uma plataforma ideal para criar aplicativos RESTful no .NET Framework. Para obter mais informações e ótimas postagens de blog, visite a página de blogueiros da ASP.NET Web API

    
por 12.08.2012 / 19:56
fonte
1

O ASP.NET Web API é um framework que facilita a criação de serviços HTTP que atingem uma ampla gama de clientes, incluindo navegadores e dispositivos móveis.

O ASP.NET Web API é uma plataforma ideal para a criação de aplicativos RESTful no .NET Framework.

link

EDITAR:

Especificamente, a API da Web do ASP.NET inclui:

  1. Um pipeline ASP.NET simplificado com sobrecarga reduzida se você escolha hospedar seu serviço no IIS.
  2. HttpClient que facilita o anzol de um cliente na API da Web.
por 12.08.2012 / 19:26
fonte
-2

Hoje, um aplicativo baseado na web não é suficiente para alcançar seus clientes. As pessoas são muito inteligentes, eles estão usando dispositivos iphone, móveis, tablets etc. em sua vida diária. Esses dispositivos também têm muitos aplicativos para facilitar a vida. Na verdade, estamos nos movendo da web para o mundo dos aplicativos. Então, se você gosta de expor seus dados de serviço aos navegadores e também a todos esses aplicativos de dispositivos modernos de maneira rápida e simples, você deve ter uma API compatível com navegadores e todos esses dispositivos.

    
por 17.07.2015 / 08:19
fonte