解決.NET Core Ajax請求后台傳送參數過大請求失敗問題
今天在項目上遇到一個坑,
在.Net Core中通過ajax向mvc的controller傳遞對象時,控制器(controller)的方法一直沒有進去,百思不得其解,
后面把傳遞的參數打印出來發現傳遞的參數比較大,有2.4M的數據,如下圖:
后面跟蹤項目發現web.config和Startup.cs里面沒有設置數據傳輸大小(至於默認的數據大小是多少就沒深究了),
到這里就明了了,就只要在web.config和Startup.cs里面設置一下就好了,注意設置方法和.Net Formwork不同,具體操作如下:
web.config里面添加,添加位置如圖:
<requestFiltering> <!-- 1GB--> <requestLimits maxAllowedContentLength="1073741822" /> </requestFiltering>
Startup.cs里面的ConfigureServices方法里面添加,添加位置如圖:
/** 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)的方法斷點了
![]()
歡迎關注訂閱我的微信公眾平台【熊澤有話說】,更多好玩易學知識等你來取
作者:熊澤-學習中的苦與樂 公眾號:熊澤有話說 出處: https://www.cnblogs.com/xiongze520/p/14500156.html 創作不易,轉載或者部分轉載、摘錄,請在文章明顯位置注明作者和原文鏈接。
|