Junior — Middle
Vysvětlete koncept middleware v ASP.NET Core a jak interaguje se zpracováním HTTP požadavků.
sobes.tech AI
Odpověď od AI
V ASP.NET Core je middleware komponenty, které zpracovávají HTTP požadavky a odpovědi v řetězci zpracování. Každé middleware přijímá požadavek, může provést určité akce (například autentizaci, logování, správu chyb) a poté předá řízení dalšímu komponentu.
Middleware funguje sekvenčně: požadavek prochází řetězcem middleware a odpověď je vrácena stejným řetězcem. To umožňuje flexibilně nakonfigurovat zpracování požadavků, přidávat funkce a řídit tok dat.
Příklad jednoduchého middleware v ASP.NET Core:
public class SimpleMiddleware
{
private readonly RequestDelegate _next;
public SimpleMiddleware(RequestDelegate next)
{
_next = next;
}
public async Task InvokeAsync(HttpContext context)
{
// Akce před předáním požadavku
Console.WriteLine("Příchozí požadavek");
await _next(context); // Předání požadavku dalšímu middleware
// Akce po zpracování požadavku
Console.WriteLine("Odchozí odpověď");
}
}
// V Startup.cs
app.UseMiddleware<SimpleMiddleware>();