Junior — Middle
Обяснете концепцията за middleware в ASP.NET Core и как тя взаимодейства с обработката на HTTP заявки.
sobes.tech AI
Отговор от AI
В ASP.NET Core middleware са компоненти, които обработват HTTP заявки и отговори в веригата за обработка. Всеки middleware получава заявка, може да извърши някои действия (например удостоверяване, логване, обработка на грешки) и след това предава управлението на следващия компонент.
Middleware взаимодействат последователно: заявката преминава през веригата от middleware, а отговорът се връща по същата верига. Това позволява гъвкаво конфигуриране на обработката на заявки, добавяне на функционалности и контрол на потока от данни.
Пример за прост middleware в ASP.NET Core:
public class SimpleMiddleware
{
private readonly RequestDelegate _next;
public SimpleMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task InvokeAsync(HttpContext context)
{
// Действия преди предаване на заявката
Console.WriteLine("Входяща заявка");
await _next(context); // Предаване на заявката към следващия middleware
// Действия след обработката на заявката
Console.WriteLine("Изходящ отговор");
}
}
// В Startup.cs
app.UseMiddleware<SimpleMiddleware>();