it-swarm.com.de

Was genau ist "Web API" in ASP.Net MVC4?

Ich weiß, was eine Web-API ist.
Ich habe APIs in mehreren Sprachen geschrieben (einschließlich in MVC3).
Ich bin auch in ASP.Net gut geübt.
Ich habe gerade festgestellt, dass MVC4 über eine "Web-API" verfügt, und ohne die Videobeispiele durchzugehen, kann ich keine gute Erklärung dafür finden, was genau es ist.
Nach meinen bisherigen Erfahrungen tendieren Microsoft-Technologien (insbesondere ASP.Net) dazu, ein einfaches Konzept in einen Haufen nutzlosen Overheads zu packen, der alles "einfacher" machen soll.
Kann mir bitte jemand erklären, was die Web-API in MVC4 genau ist? Warum brauche ich es? Warum kann ich nicht einfach meine eigene API schreiben?

15
James P. Wright

Die ASP.NET-Web-API ist ein Framework ohne Meinungen zum Erstellen eines [~ # ~] http [~ # ~] Dienstes unabhängig von REST oder RPC. Dies ist die beste Implementierung von RFC 2616 (HTTP Spec) von Microsoft.

Natürlich können Sie Ihre eigene API erstellen, aber die ASP.NET-Web-API:

  • Basierend auf dem Modell Russian Doll , mit dem legoähnliche Module zur HTTP-Pipeline hinzugefügt werden können
  • Macht HTTP zu einem erstklassigen Bürger, sodass alle gängigen Header stark typisiert sind (nicht nur der Wert des Namens), und hilft beim Parsen
  • Ermöglicht sowohl ASP.NET (IIS) -Hosting als auch Self-Hosting
  • unterstützt Inhaltsverhandlungen, Medientypen, ...
  • Ist Async von oben nach unten
  • Verwendet einen ähnlichen Ansatz für Clients mit HttpClient
16
Aliostad

Kurz gesagt: Die ASP.NET-Web-API macht REST a erstklassiger Bürger in .NET, die WCF nicht wirklich umarmen konnte. Wie Sie vielleicht wissen, ist ASP.NET Web API ein Framework for building web APIs über .NET Framework.

Eine der größten Frustrationen, die wir als Webentwickler hatten, war die endlose Konfiguration mit WCF. Ich meine, WCF ist großartig, hat aber das REST seit dem WCF-Web-API-Framework nicht angenommen ) . Es gab etwas namens REST Starter Kit, aber es endete tot.

Die ASP.NET-Web-API ist jedoch ein Framework der nächsten Generation, mit dem sich auf einfache Weise HTTP-Dienste erstellen lassen, die eine breite Palette von Clients wie Browser und mobile Geräte erreichen. Es ist eine ideale Plattform zum Erstellen von RESTful-Anwendungen auf .NET Framework. Weitere Informationen und großartige Blog-Beiträge finden Sie unter ASP.NET Web API-Bloggerseite

6
Yusubov

Die neue Web-API von Microsoft ist, wie der Name schon sagt, alles über das Schreiben von APIs, auf die über das Internet zugegriffen werden kann, mit einem Hang zu REST.

Rick Strahl vor kurzem darüber gebloggt und hat eine gute Analyse, wann MVC vs Web API verwendet werden soll.

Dinge wie integrierte Inhaltsverhandlung, mehrere integrierte Formate und mehr.

6
Oded

Die ASP.NET-Web-API ist ein Framework, mit dem auf einfache Weise HTTP-Dienste erstellt werden können, die eine breite Palette von Clients erreichen, einschließlich Browsern und Mobilgeräten.

Die ASP.NET-Web-API ist eine ideale Plattform zum Erstellen von RESTful-Anwendungen auf .NET Framework.

http://www.asp.net/web-api


BEARBEITEN:

Insbesondere umfasst die ASP.NET-Web-API:

  1. Eine optimierte ASP.NET-Pipeline mit reduziertem Overhead, wenn Sie Ihren Dienst in IIS hosten möchten.
  2. HttpClient Dies erleichtert einem Client das Einbinden in die Web-API.
1
Jim G.