ExpertiDict

C# · Intermediário · Inglês · Técnico

middleware

/ˈmɪdlˌwɛr/substantivo

Componente do pipeline HTTP do ASP.NET Core que recebe a requisição, pode agir antes e depois do próximo componente e decide se o chama. A ordem de registro importa.

Onde usar

Aparece em autenticação, CORS, logging e tratamento de exceções, registrados com app.Use. A ordem importa: UseAuthentication deve vir antes de UseAuthorization, e o handler de exceções vem bem cedo.

Em código

app.Use(async (ctx, next) =>
{
  Console.WriteLine(ctx.Request.Path);
  await next();
  Console.WriteLine(ctx.Response.StatusCode);
});

Exemplos

The order of the middleware matters.

A ordem dos middlewares importa.

This middleware logs every request.

Esse middleware registra todas as requisições.

Cuidado

Não esqueça de chamar next() quando a requisição deve continuar: sem isso o pipeline termina ali e o endpoint nunca roda.

Veja também

Todos os termos de C#