Les CancellationToken sont des objets permettant d'annuler des tâches asynchrones. Dans le cas d'une API ASPNET Core, elles peuvent être utilisées Core afin de gérer l'annulation des requêtes HTTP par le client.

Et pour l'utiliser, il faut… simplement déclarer un paramètre de type CancellationToken sur vos actions (et bien sûr penser à passer le paramètre aux méthodes sous-jacentes) :

[HttpGet("")]
public async Task<IActionResult> Login([FromBody]LoginRequest loginRequest, CancellationToken cancellationToken)
{
    return await this.authenticationManager.Login(loginRequest.Login, loginRequest.Password, cancellationToken);
}

ASPNET Core va automatiquement binder tous les paramètres de type CancellationToken de vos actions à la propriété HttpContext.RequestAborted, via le model binder CancellationTokenModelBinder

Et voilà, rien de plus simple à mettre en place et pourtant très intéressant.

Bons CancellationToken !

Si cet article t'a plu, n'hésites pas à partager , et si tu as des questions / remarques, n'hésites pas à me contacter