From dfe6d2c8ee24646abbf9d343797ef576d2cd810b Mon Sep 17 00:00:00 2001 From: cKey <35512826+colinin@users.noreply.github.com> Date: Wed, 22 Mar 2023 21:42:31 +0800 Subject: [PATCH] fix(wrapper): repeated response header --- .../Mvc/Idempotent/Wrapper/IdempotentHttpResponseWrapper.cs | 5 ++++- .../LINGYUN/Abp/AspNetCore/Mvc/HttpResponseWrapper.cs | 5 ++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Idempotent.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/Idempotent/Wrapper/IdempotentHttpResponseWrapper.cs b/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Idempotent.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/Idempotent/Wrapper/IdempotentHttpResponseWrapper.cs index ce37622f4..560e78d3e 100644 --- a/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Idempotent.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/Idempotent/Wrapper/IdempotentHttpResponseWrapper.cs +++ b/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Idempotent.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/Idempotent/Wrapper/IdempotentHttpResponseWrapper.cs @@ -26,7 +26,10 @@ public class IdempotentHttpResponseWrapper : HttpResponseWrapper, ITransientDepe { if (context.HttpContext.Items.TryGetValue(nameof(IdempotentAttribute.RedirectUrl), out var redirectUrl) && redirectUrl != null) { - context.HttpContext.Response.Headers.Add(AbpHttpWrapConsts.AbpWrapResult, "true"); + if (!context.HttpContext.Response.Headers.ContainsKey(AbpHttpWrapConsts.AbpWrapResult)) + { + context.HttpContext.Response.Headers.Add(AbpHttpWrapConsts.AbpWrapResult, "true"); + } context.HttpContext.Response.Redirect(redirectUrl.ToString()); return; } diff --git a/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/HttpResponseWrapper.cs b/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/HttpResponseWrapper.cs index 4e98dcdfe..c0087b3ff 100644 --- a/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/HttpResponseWrapper.cs +++ b/aspnet-core/modules/mvc/LINGYUN.Abp.AspNetCore.Mvc.Wrapper/LINGYUN/Abp/AspNetCore/Mvc/HttpResponseWrapper.cs @@ -22,7 +22,10 @@ public class HttpResponseWrapper : IHttpResponseWrapper, ITransientDependency { foreach (var header in context.HttpHeaders) { - context.HttpContext.Response.Headers.Add(header.Key, header.Value); + if (!context.HttpContext.Response.Headers.ContainsKey(header.Key)) + { + context.HttpContext.Response.Headers.Add(header.Key, header.Value); + } } } }