REST v ASP.NET Core

Dokončeno

Když přejdete na webovou stránku, webový server komunikuje s prohlížečem pomocí HTML, CSS a JavaScriptu. Pokud například na stránce pracujete odesláním přihlašovacího formuláře nebo výběrem tlačítka Koupit, prohlížeč odešle informace zpět na webový server.

Podobně můžou webové servery komunikovat s širokou škálou klientů (prohlížečů, mobilních zařízení, jiných webových serverů a dalších) pomocí webových služeb. Klienti rozhraní API komunikují se serverem přes protokol HTTP a dvě informace o výměně pomocí datového formátu, jako je JSON nebo XML. Rozhraní API se často používají v jednostrákových aplikacích (SPA), které provádějí většinu logiky uživatelského rozhraní ve webovém prohlížeči. Komunikace s webovým serverem se primárně děje prostřednictvím webových rozhraní API.

REST: Běžný vzor pro vytváření rozhraní API pomocí protokolu HTTP

Representational State Transfer (REST) je styl architektury pro vytváření webových služeb. Požadavky REST se provádějí přes protokol HTTP. Používají stejné příkazy HTTP, které webové prohlížeče používají k načtení webových stránek a odesílání dat na servery. Příkazy jsou:

  • GET: Načtěte data z webové služby.
  • POST: Vytvořte novou položku dat ve webové službě.
  • PUT: Aktualizujte položku dat ve webové službě.
  • PATCH: Aktualizujte položku dat ve webové službě popisem sady pokynů k úpravě položky. Ukázková aplikace v tomto modulu nepoužívá toto sloveso.
  • DELETE: Odstraní položku dat ve webové službě.

Rozhraní API webové služby, která dodržují REST, se nazývají rozhraní RESTful API. Jsou definovány prostřednictvím:

  • Základní identifikátor URI.
  • Metody HTTP, například GET, POST, PUT, PATCHnebo DELETE.
  • Typ média pro data, například JavaScript Object Notation (JSON) nebo XML.

Rozhraní API často potřebuje poskytovat služby pro několik různých, ale souvisejících věcí. Naše rozhraní API pro pizzu může například spravovat pizzy, zákazníky a objednávky. Směrování používáme k mapování identifikátorů URI (jednotných identifikátorů prostředků) na logické dělení v kódu, aby se požadavky https://localhost:5000/pizza směrovaly do PizzaController a požadavky https://localhost:5000/order směrované na OrderController.

Výhody vytváření rozhraní API v ASP.NET Core

S ASP.NET můžete použít stejnou architekturu a vzory k vytváření webových stránek i služeb. Můžete opakovaně používat třídy modelů a logiku ověřování a dokonce i obsluhovat webové stránky i služby vedle sebe ve stejném projektu. Tento přístup má výhody:

  • Jednoduchá serializace: ASP.NET byl navržen pro moderní webové prostředí. Koncové body automaticky serializují vaše třídy do správně naformátovaného FORMÁTU JSON. Nevyžaduje se žádná zvláštní konfigurace. Serializaci můžete přizpůsobit pro koncové body, které mají jedinečné požadavky.

  • Ověřování a autorizace: Pro zabezpečení mají koncové body rozhraní API integrovanou podporu standardních webových tokenů JSON (JWT). Autorizace založená na zásadách poskytuje flexibilitu při definování výkonných pravidel řízení přístupu v kódu.

  • Směrování společně s kódem: ASP.NET umožňuje definovat trasy a příkazy vložené s kódem pomocí atributů. Data z cesty požadavku, řetězce dotazu a textu požadavku jsou automaticky vázána na parametry metody.

  • HTTPS ve výchozím nastavení: HTTPS je důležitou součástí moderních a profesionálních webových rozhraní API. Spoléhá na komplexní šifrování, které poskytuje ochranu osobních údajů a pomáhá zajistit, aby vaše volání rozhraní API nebyla zachycena a změněna mezi klientem a serverem.

    ASP.NET poskytuje podporu protokolu HTTPS. Automaticky vygeneruje testovací certifikát a snadno ho naimportuje, aby povoloval místní PROTOKOL HTTPS, abyste mohli bezpečně spouštět a ladit aplikace před jejich publikováním.

Sdílení kódu a znalostí s aplikacemi .NET

Dovednosti a ekosystém .NET můžete použít ke sdílení logiky z webového rozhraní API do jiných aplikací vytvořených pomocí .NET, včetně mobilních, webových, desktopových a služeb.

Testování webových rozhraní API pomocí .NET HTTP REPL

Při vývoji tradičního webu obvykle zobrazíte a otestujete svou práci ve webovém prohlížeči. Webová rozhraní API přijímají a vracejí data místo HTML, takže webový prohlížeč není nejlepším nástrojem pro testování webového rozhraní API.

Jednou z nejjednodušších možností pro zkoumání a interakci s webovými rozhraními API je .NET HTTP REPL (smyčka read-evaluate-print). Je to jednoduchý a oblíbený způsob vytváření interaktivních prostředí příkazového řádku. V další lekci vytvoříte jednoduché webové rozhraní API a pak s ním budete pracovat pomocí rozhraní .NET HTTP REPL.

Kontrola znalostí

1.

Který z následujících případů použití není důvodem k vytvoření webového rozhraní API pomocí ASP.NET Core?