diff --git a/Infrastructure/WebExtensions/RequestLimitExtension.cs b/Infrastructure/WebExtensions/RequestLimitExtension.cs
new file mode 100644
index 0000000..e57ec9d
--- /dev/null
+++ b/Infrastructure/WebExtensions/RequestLimitExtension.cs
@@ -0,0 +1,35 @@
+using Microsoft.AspNetCore.Builder;
+using Microsoft.AspNetCore.Http.Features;
+using Microsoft.AspNetCore.Server.Kestrel.Core;
+using Microsoft.Extensions.Configuration;
+using Microsoft.Extensions.DependencyInjection;
+
+namespace ZR.Infrastructure.WebExtensions
+{
+ public static class RequestLimitExtension
+ {
+ ///
+ /// 请求body大小设置
+ ///
+ ///
+ ///
+ public static void AddRequestLimit(this IServiceCollection services, IConfiguration configuration)
+ {
+ var sizeM = configuration.GetSection("upload:requestLimitSize").Get();
+ services.Configure(x =>
+ {
+ x.MultipartBodyLengthLimit = sizeM * 1024 * 1024;
+ x.MemoryBufferThreshold = sizeM * 1024 * 1024;
+ x.ValueLengthLimit = int.MaxValue;
+ });
+ services.Configure(options =>
+ {
+ options.Limits.MaxRequestBodySize = sizeM * 1024 * 1024;
+ });
+ services.Configure(options =>
+ {
+ options.MaxRequestBodySize = sizeM * 1024 * 1024; // 设置最大请求体大小为500MB
+ });
+ }
+ }
+}
diff --git a/ZR.Admin.WebApi/Program.cs b/ZR.Admin.WebApi/Program.cs
index b0bda3c..5eccb37 100644
--- a/ZR.Admin.WebApi/Program.cs
+++ b/ZR.Admin.WebApi/Program.cs
@@ -47,6 +47,8 @@ builder.Services.AddSingleton(new AppSettings(builder.Configuration));
builder.Services.AddAppService();
//开启计划任务
builder.Services.AddTaskSchedulers();
+//请求大小限制
+builder.Services.AddRequestLimit(builder.Configuration);
//注册REDIS 服务
var openRedis = builder.Configuration["RedisServer:open"];
diff --git a/ZR.Admin.WebApi/appsettings.json b/ZR.Admin.WebApi/appsettings.json
index 2e52bf4..9fd51ca 100644
--- a/ZR.Admin.WebApi/appsettings.json
+++ b/ZR.Admin.WebApi/appsettings.json
@@ -39,12 +39,13 @@
"DemoMode": false, //是否演示模式
"SingleLogin": false, //是否允许多设备/浏览器登录
"workId": 1, //雪花id唯一数字
- "sqlExecutionTime": 5,//Sql执行时间超过多少秒记录日志并警报
+ "sqlExecutionTime": 5, //Sql执行时间超过多少秒记录日志并警报
"Upload": {
"uploadUrl": "http://localhost:8888", //本地存储资源访问路径
"localSavePath": "", //本地上传默认文件存储目录 wwwroot
"maxSize": 15, //上传文件大小限制 15M
- "notAllowedExt": [ ".bat", ".exe", ".jar", ".js" ]
+ "notAllowedExt": [ ".bat", ".exe", ".jar", ".js" ],
+ "requestLimitSize": 50//请求body大小限制
},
//阿里云存储配置
"ALIYUN_OSS": {