Ошибка при изменении заголовков ответов в промежуточном программном обеспеченииC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка при изменении заголовков ответов в промежуточном программном обеспечении

Сообщение Anonymous »

Я пытаюсь изменить заголовки ответов в каком -то промежуточном программном обеспечении после того, как оно закончилось в контроллере, но я получаю сообщение об ошибке: < /p>

Код: Выделить всё

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
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»