微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 如何增加ASP.NET WebAPI Post调用的json大小限制?

我的页面上的表单有点太大了.它收集每月测量数据.请看样品:
{
"Year":2013,"Month":3,"Records":[
    {"Id":0,"Date":"3/1/2013","RiverSection":5,"UserNumber":56},{"Id":0,"RiverSection":7,"UserNumber":200},"RiverSection":8,"UserNumber":556},"Date":"3/2/2013",...
    ...
    {"Id":0,"Date":"3/31/2013","UserNumber":200}
}

所以我把大数据发布到APIController.

我的本地机器使用Visual Studio调试器服务器工作正常.但是,当我将代码上传到服务器(IIS 6)后.它给出500内部服务器错误.

我尝试过发布一些示例数据并检查了json的字符串长度.

一个样本数据集中,我的json的长度是5743,我获得了“成功”.但是如果json的大小上升到17345,那么我有一个500内部服务器错误.

所以我试图增加json的极限.基于this post

在Web.Config中:

<system.web.extensions>
<scripting>
  <webServices>
    <jsonSerialization maxJsonLength="5000000">
    </jsonSerialization>
  </webServices>
</scripting>
</system.web.extensions>

但它不工作.

还有另一个答案,使用:

var serializer = new JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue;

但是我们应该在哪里放这个代码?在Global.asax?

请注意我使用的是IIS 6.那是一个问题吗?如何正确增加json大小的限制,以便我的数据可以打到WebApi操作?

感谢您的协助.

解决方法

尝试在web.config中的appSettings下面添加aspnet:MaxJsonDeserializerMembers
<add key="aspnet:MaxJsonDeserializerMembers" value="20000"/>

资源:
An ASP.NET request that has lots of form keys,files,or JSON payload members fails with an exception

原文地址:https://www.jb51.cc/jquery/176458.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐