解决.NET Core Ajax请求后台传送参数过大请求失败问题

简介: 解决.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="107374

 

 


 

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)的方法断点了

 

相关文章
|
13天前
|
JSON 前端开发 JavaScript
axios请求成功而$.ajax却不行排错
axios请求成功而$.ajax却不行排错
15 2
|
13天前
|
前端开发
解决前端ajax跨域请求不携带cookie信息JSESSIONID的问题
解决前端ajax跨域请求不携带cookie信息JSESSIONID的问题
|
13天前
|
开发框架 前端开发 JavaScript
ASP.NET AJAX使用方法概述(三)
ASP.NET AJAX使用方法概述(三)
17 1
|
13天前
|
JSON 前端开发 JavaScript
Fetch API与Ajax请求
Fetch API是JavaScript的一种新方法,用于网络请求,提供简洁的Promise-based语法和更多功能,如处理头、取消请求及跨域支持,比Ajax更强大。尽管不完全替代Ajax,尤其在老浏览器或需要底层控制时,Fetch API仍是现代浏览器中获取资源的优选工具。例如,以下代码展示了如何使用Fetch API进行GET和POST请求。
|
13天前
|
开发框架 缓存 前端开发
安装ASP.NET AJAX (一安装)
安装ASP.NET AJAX (一安装)
15 0
|
13天前
|
XML JSON 前端开发
学习Ajax使用异步对象发送请求
Ajax,全称Asynchronous JavaScript and XML(异步JavaScript和XML),是一种用于创建更好、更快以及交互性更强的Web应用程序的技术。
23 3
|
13天前
|
XML 开发框架 .NET
C# .NET面试系列八:ADO.NET、XML、HTTP、AJAX、WebService
## 第二部分:ADO.NET、XML、HTTP、AJAX、WebService #### 1. .NET 和 C# 有什么区别? .NET(通用语言运行时): ```c# 定义:.NET 是一个软件开发框架,提供了一个通用的运行时环境,用于在不同的编程语言中执行代码。 作用:它为多语言支持提供了一个统一的平台,允许不同的语言共享类库和其他资源。.NET 包括 Common Language Runtime (CLR)、基础类库(BCL)和其他工具。 ``` C#(C Sharp): ```c# 定义: C# 是一种由微软设计的面向对象的编程语言,专门为.NET 平台开发而创建。 作
193 2
|
13天前
|
前端开发
AJAX发送请求方法封装和请求函数底层刨析以及axios二次封装
AJAX发送请求方法封装和请求函数底层刨析以及axios二次封装
|
13天前
|
机器学习/深度学习 存储 编解码
多任务学习新篇章 | EMA-Net利用Cross-Task Affinity实现参数高效的高性能预测
多任务学习新篇章 | EMA-Net利用Cross-Task Affinity实现参数高效的高性能预测
63 0
|
13天前
|
XML JSON 前端开发