Comment utiliser Ocelot comme passerelle API dans ASP.NET Core
Apprenez à utiliser Ocelot dans ASP.NET Core API comme passerelle API.
Un Passerelle API est un serveur de frontend pour les API, gérant les demandes d’API entrantes et les acheminant vers les services backend appropriés. Il joue un rôle crucial dans l’architecture microservice en offrant un seul point d’entrée au système.
Certaines fonctionnalités principales d’une passerelle API sont:
Routage
Authentification
Autorisation
Demander la composition
Mise en cache
Équilibrage de charge
Tolérance aux défauts
Découverte de service
Il existe de nombreux choix populaires pour la passerelle API dans les microservices basés sur ASP.NET, tels que Ocelot, Yarp et autres.
Ce billet de blog explique Comment Ocelot peut être une passerelle API dans ASP.NET Core API.
Configuration des API
Il y a deux API. La première API a un ProductController avec deux points de terminaison.
[Route("api/products")][ApiController]publicclassProductController: ControllerBase
{static List<Product> Products =newList<Product>(){newProduct{ Id =1, Name ="Product 1", Price =10.0m },newProduct{ Id =2, Name ="Product 2", Price =20.0m },newProduct{ Id =3, Name ="Product 3", Price =30.0m }};[HttpGet]publicasync Task<ActionResult<IEnumerable<Product>>>Get(){var products =awaitGetProductsAsync();await Task.Delay(500);returnOk(products);}[HttpPost]publicasync Task<ActionResult<Product>>Post(Product product){
Products.Add(product);await Task.Delay(500);returnCreatedAtAction(nameof(Get),new{ id = product.Id }, product);}private Task<List<Product>>GetProductsAsync(){return Task.FromResult(Products);}}
Explorons chaque configuration dans le fichier ci-dessus.
Dans le GlobalConfiguration Section, la BaseUrl est l’URL de la passerelle API. Les clients API interagiront avec cette URL. Lors de l’exécution du projet API Gateway, il devrait fonctionner sur cette URL de base.
La section Routes contient diverses routes dans le tableau.
Les routes ont des sections en amont et en aval.
La section en amont représente la passerelle API.
La section en aval représente les API.
La configuration ci-dessus peut être représentée avec ce diagramme:
Maintenant, exécutez l’application API Gateway et vous devriez pouvoir naviguer dans les API privées. Ocelot prend en charge d’autres verbes HTTP en plus de Get. Un itinéraire pour les opérations de poste peut être ajouté, comme indiqué ci-dessous.
juillet 3, 2025
Comment utiliser Ocelot comme passerelle API dans ASP.NET Core
Apprenez à utiliser Ocelot dans ASP.NET Core API comme passerelle API.
Un Passerelle API est un serveur de frontend pour les API, gérant les demandes d’API entrantes et les acheminant vers les services backend appropriés. Il joue un rôle crucial dans l’architecture microservice en offrant un seul point d’entrée au système.
Certaines fonctionnalités principales d’une passerelle API sont:
Il existe de nombreux choix populaires pour la passerelle API dans les microservices basés sur ASP.NET, tels que Ocelot, Yarp et autres.
Ce billet de blog explique Comment Ocelot peut être une passerelle API dans ASP.NET Core API.
Configuration des API
Il y a deux API. La première API a un
ProductController
avec deux points de terminaison.Ces points de terminaison sont disponibles à http: // localhost: 5047 / api / produits Pour les opérations Get et Post.
La deuxième API a
InvoiceController
avec un seul point final.Le point de terminaison est disponible à http: // localhost: 5162 / api / facture pour l’opération Get.
Configuration de la passerelle API
Nous allons configurer la passerelle API à l’aide d’Ocelot. Pour cela, suivons ces étapes:
Tout d’abord, ajoutez le package Ocelot de Nuget au projet.
Après avoir ajouté le package Ocelot, ajoutez un fichier nommé ocelot.json au projet API Gateway.
ocelot.json
Explorons chaque configuration dans le fichier ci-dessus.
GlobalConfiguration
Section, laBaseUrl
est l’URL de la passerelle API. Les clients API interagiront avec cette URL. Lors de l’exécution du projet API Gateway, il devrait fonctionner sur cette URL de base.La configuration ci-dessus peut être représentée avec ce diagramme:
Par la configuration ci-dessus, lorsque vous appuyez sur le point de terminaison, il sera redirigé vers l’API Endpoint http: // localhost: 5047 / api / produits.
Suivant dans le programme.cs, au démarrage de l’application Gateway, ajoutez la configuration ci-dessous:
Maintenant, exécutez l’application API Gateway et vous devriez pouvoir naviguer dans les API privées. Ocelot prend en charge d’autres verbes HTTP en plus de Get. Un itinéraire pour les opérations de poste peut être ajouté, comme indiqué ci-dessous.
À l’aide de configurations de base, vous devriez être en mesure de lire l’objet HttpContext, les en-têtes et les objets de demande dans l’API privé.
J’espère que vous trouverez cet article de blog utile. Merci de l’avoir lu.
Source link
Partager :
Articles similaires