Szenario: Wenn das Frontend die Backend-API aufruft, möchten wir, dass das Backend eine einheitliche JSON-Modellschnittstelle zurückgibt, und die von verschiedenen Schnittstellen zurückgegebenen Daten werden im Datenfeld der einheitlichen Schnittstelle eingebettet.
Der ursprüngliche Ansatz war, für alle Interface-Einstellungen dasselbe Modellobjekt zurückzugeben, was möglich war, aber es war etwas ausführlich.
Im ASP.NET WebAPI, einer vollständigen HTTP-Anfrage, ist das Flussdiagramm wie folgt:
Mein eigenes Verständnis von MessageHandlern ist die Middleware-Middleware in ASP.NET Core.
Zum Beispiel:
Es stellt sich heraus, dass JSON-Inhalte zurückgegeben werden:
Wir möchten das folgende Format zurückgeben:
{"success":true,"message":"ok","data":["value1","itsvse.com"]} Alle Schnittstellen-Rückgabemodelle enthalten Felder wie Erfolg, Nachricht usw.
Einheitliches Antwortentitätsmodell
Erstellen Sie ein neues ApiHandler-Objekt mit folgendem Code:
Registrieren Sie benutzerdefinierte MessageHandlers in der WebApiConfig-Konfigurationsdatei mit folgendem Code:
Verwenden Sie im neuen Projekt den Standard-ValuesController-Controller und passen Sie ihn wie folgt an:
Versuchen Sie, auf unsere API-Oberfläche zuzugreifen, das Rendering sieht wie folgt aus:
(Ende)
|