Scenario: Wanneer de frontend de backend-API aanroept, willen we dat de backend een uniforme JSON-modelinterface teruggeeft, en de data die door verschillende interfaces wordt teruggegeven, wordt verpakt in het dataveld van de geünificeerde interface.
De oorspronkelijke aanpak was om hetzelfde modelobject voor alle interface-instellingen terug te geven, wat mogelijk was, maar het was wat te langdradig.
In de ASP.NET WebAPI, een volledige HTTP-aanvraag, is het stroomdiagram als volgt:
Mijn eigen begrip van MessageHandlers is de middleware-middleware in ASP.NET Core.
Bijvoorbeeld:
Het blijkt json-inhoud terug te geven:
We willen graag het volgende format teruggeven:
{"succes":waar,"message":"ok","data":["value1","itsvse.com"]} Alle interface-returnmodellen bevatten velden zoals succes, bericht, enzovoort.
Unified response entity model
Maak een nieuw ApiHandler-object aan met de volgende code:
Registreer een aangepaste MessageHandlers in het WebApiConfig-configuratiebestand met de volgende code:
Gebruik de standaard ValuesController-controller in het nieuwe project en pas deze als volgt aan:
Probeer toegang te krijgen tot onze API-interface, de rendering is als volgt:
(Einde)
|