Код: Выделить всё
System.InvalidOperationException: Headers are read-only, response has already started.
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpHeaders.ThrowHeadersReadOnlyException()
at Microsoft.AspNetCore.Server.Kestrel.Core.Internal.Http.HttpHeaders.Microsoft.AspNetCore.Http.IHeaderDictionary.set_Item(String key, StringValues value)
at EditResponseMiddleware.InvokeAsync(HttpContext context) in
< /code>
Контроллер является контроллером по умолчанию и не включена здесь. < /p>
Это код, который вызывает исключение: < /p>
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddControllers();
var app = builder.Build();
app.UseMiddleware();
app.UseAuthorization();
app.MapControllers();
app.Run();
public class EditResponseMiddleware
{
private readonly RequestDelegate _next;
public EditResponseMiddleware( RequestDelegate next )
{
_next = next;
}
public async Task InvokeAsync( HttpContext context )
{
await _next( context );
context.Response.Headers["MyHeader"] = "Test";
}
}
Подробнее здесь: https://stackoverflow.com/questions/771 ... middleware