解决.NET Core Ajax请求后台传送参数过大请求失败问题
原文链接:https://www.cnblogs.com/xiongze520/p/14500156.html
今天在项目上遇到一个坑,
在.Net Core中通过ajax向mvc的controller传递对象时,控制器(controller)的方法一直没有进去,百思不得其解,
后面把传递的参数打印出来发现传递的参数比较大,有2.4M的数据,如下图:
后面跟踪项目发现web.config和Startup.cs里面没有设置数据传输大小(至于默认的数据大小是多少就没深究了),
到这里就明了了,就只要在web.config和Startup.cs里面设置一下就好了,注意设置方法和.Net Formwork不同,具体操作如下:
web.config里面添加,添加位置如图:
1 2 3 4 | <requestFiltering> <!-- 1GB--> <requestLimits maxAllowedContentLength= "1073741822" /> </requestFiltering> |
Startup.cs里面的ConfigureServices方法里面添加,添加位置如图:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | /** begin xiongze 2021-03-08**************/ //上传文件大小限制Kestrel设置 services.Configure<KestrelServerOptions>(options => { // Set the limit to 256 MB options.Limits.MaxRequestBodySize = 268435456; }); //上传文件大小限制IIS设置 services.Configure<CookiePolicyOptions>(options => { // This lambda determines whether user consent for non-essential cookies is needed for a given request. options.CheckConsentNeeded = context => true ; options.MinimumSameSitePolicy = SameSiteMode.None; }); //解决文件上传Multipart body length limit 134217728 exceeded services.Configure<FormOptions>(x => { x.ValueLengthLimit = int .MaxValue; x.MultipartBodyLengthLimit = int .MaxValue; x.MemoryBufferThreshold = int .MaxValue; }); /** end xiongze 2021-03-08**************/ |
添加好后就可以运行了,如图,终于进控制器(controller)的方法断点了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2022-07-01 给三十几万条数据加序号(sqlserver与excel)
2022-07-01 .csv文件与excel文件的区别
2022-07-01 人脸数据库的特征提取