Maison  >  Article  >  développement back-end  >  Quels sont les gestionnaires de messages intégrés dans Asp.Net webAPI C# ?

Quels sont les gestionnaires de messages intégrés dans Asp.Net webAPI C# ?

王林
王林avant
2023-09-11 15:45:06927parcourir

Un gestionnaire de messages est une classe qui reçoit des requêtes HTTP et renvoie HTTP répondre. Les gestionnaires de messages sont dérivés de la classe abstraite HttpMessageHandler. Les gestionnaires de messages nous offrent la possibilité de traiter, modifier ou rejeter les messages entrants Avant que la requête n’atteigne HttpControllerDispatcher.

Les gestionnaires de messages sont exécutés plus tôt dans le pipeline de traitement des requêtes, donc Ils constituent un excellent endroit pour mettre en œuvre des préoccupations transversales dans une API Web. information Un gestionnaire n'est rien de plus qu'une série de classes (il peut être défini par le système ou créé par us) accompagne le processus de transmission des requêtes et des réponses HTTP.

Asp.Net webAPI C# 中的内置消息处理程序是什么?

Par exemple, une requête HTTP arrive sur un serveur HTTP, désormais la requête sera Passé à HandlerA, après traitement dans HandlerA, il peut aller à HandlerB, bientôt. Maintenant, l'avantage ici est que nous pouvons le faire dans chaque La procédure de traitement dépend de nos besoins commerciaux.

Dans ASP.NET Web API Framework, il existe deux types de gestionnaires de messages : disponible. Ils sont les suivants.

  • Gestionnaire de messages HTTP côté serveur
  • Gestionnaire de messages HTTP côté client

Gestionnaire de messages côté serveur

Côté serveur, le pipeline de l'API Web utilise des gestionnaires de messages intégrés -

  • HttpServer strong> Récupéré auprès de l'hôte, demandez.
  • HttpRoutingDispatcher répartit les demandes en fonction du routage.
  • HttpControllerDispatcher Envoie des requêtes aux contrôleurs de l'API Web.

Nous pouvons ajouter des gestionnaires personnalisés aux pipelines. Les gestionnaires de messages sont parfaits pour le cross-cut Problèmes fonctionnant au niveau du message HTTP plutôt qu'au niveau du contrôleur action). Par exemple, un gestionnaire de messages pourrait : 

  • lire ou modifier les en-têtes de requête.
  • Ajoutez des en-têtes de réponse à la réponse.
  • Validez les demandes avant qu'elles n'atteignent le contrôleur.

Gestionnaire de messages HTTP client

Côté client, la classe HttpClient utilise des gestionnaires de messages pour gérer les requêtes. Le gestionnaire par défaut est HttpClientHandler qui envoie la requête sur le réseau et obtenez la réponse du serveur. Nous pouvons insérer des gestionnaires de messages personnalisés dans le pipeline client.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer