Scénář: Když frontend volá backend API, chceme, aby backend vrátil jednotné rozhraní JSON modelu a data vrácená různými rozhraními jsou zabalena do datového pole sjednoceného rozhraní.
Původní přístup byl vracet stejný modelový objekt pro všechna nastavení rozhraní, což bylo možné, ale bylo to trochu rozvláčné.
V ASP.NET WebAPI, plném HTTP požadavku, je diagram následující:
Moje vlastní představa o MessageHandlerech je middleware v jádru ASP.NET.
Například:
Ukazuje se, že vrací obsah json:
Rádi bychom vrátili následující formát:
{"success":true,"message":"ok","data":["value1","itsvse.com"]} Všechny modely návratu rozhraní obsahují pole jako úspěch, zpráva atd.
Model jednotné entity odezvy
Vytvořte nový objekt ApiHandler s následujícím kódem:
Zaregistrujte vlastní MessageHandlery v konfiguračním souboru WebApiConfig s následujícím kódem:
Použijte výchozí řadič ValuesController v novém projektu a upravte ho následovně:
Zkuste se dostat do našeho API rozhraní, vykreslování je následující:
(Konec)
|