Ein Nachrichtenhandler ist eine Klasse, die HTTP-Anfragen empfängt und HTTP zurückgibt Antwort. Nachrichtenhandler werden von der abstrakten HttpMessageHandler-Klasse abgeleitet. Message-Handler bieten uns die Möglichkeit, eingehende Nachrichten zu bearbeiten, zu bearbeiten oder abzulehnen Bevor die Anfrage den HttpControllerDispatcher erreicht.
Nachrichtenhandler werden also früher in der Anforderungsverarbeitungspipeline ausgeführt Sie sind ein großartiger Ort, um übergreifende Anliegen in einer Web-API umzusetzen. Information Ein Handler ist nichts anderes als eine Reihe von Klassen (er kann systemdefiniert sein oder von erstellt werden). us) steht neben dem Prozess der Weiterleitung von HTTP-Anfragen und -Antworten.
Wenn beispielsweise eine HTTP-Anfrage bei einem HTTP-Server eintrifft, wird die Anfrage nun gesendet Wird an HandlerA übergeben und kann nach der Verarbeitung in HandlerA an HandlerB weitergeleitet werden. bald. Der Vorteil hierbei ist, dass wir dies in jedem Fall tun können Das Verarbeitungsverfahren richtet sich nach unseren geschäftlichen Anforderungen.
Im ASP.NET Web API Framework gibt es zwei Arten von Nachrichtenhandlern: verfügbar. Sie sind wie folgt.
Auf der Serverseite verwendet die Web-API-Pipeline einige integrierte Nachrichtenhandler –
Wir können benutzerdefinierte Handler zu Pipelines hinzufügen. Nachrichtenhandler eignen sich hervorragend zum Querschneiden Probleme, die auf der HTTP-Nachrichtenebene statt auf der Controller-Ebene auftreten Aktion). Beispielsweise könnte ein Nachrichtenhandler -
Auf der Clientseite verwendet die HttpClient-Klasse Nachrichtenhandler, um Anfragen zu verarbeiten. Der Standardhandler ist HttpClientHandler, der die Anfrage über das Netzwerk sendet und erhalten Sie die Antwort vom Server. Wir können benutzerdefinierte Nachrichtenhandler in die Client-Pipeline einfügen.
Das obige ist der detaillierte Inhalt vonWas sind die integrierten Nachrichtenhandler in Asp.Net webAPI C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!