J'essaie d'ajouter un en-tête aux réponses d'une API Web de base .Net lorsqu'une exception se produit.Ajout d'un en-tête de réponse dans un objet ExceptionFilterAttribute dans ASP .Net Core
J'utilise un ExceptionFilterAttribute
...
public class ExceptionFilter : ExceptionFilterAttribute
{
public override void OnException(ExceptionContext context)
{
context.HttpContext.Response.Headers.Add("CorrelationId", "12345");
base.OnException(context);
}
}
Pour une raison quelconque l'en-tête n'est pas envoyé au client. Je suppose que c'est quelque chose à voir avec les réponses déjà formées à ce moment-là afin qu'elles ne puissent pas être changées?
J'ai un middleware personnalisé qui ajoute un ID de corrélation au contexte de la requête et le sort ensuite dans les en-têtes de réponse. Cela ne se déclenche pas lorsqu'une exception se produit bien que j'ai besoin d'une autre façon de le faire, donc d'essayer d'utiliser le filtre.
Que dois-je changer pour que cela fonctionne?