ajax异步返回的json数据过长怎么解决?

千-千 2016-07-10 09:32:06
Exception information:
Exception type: InvalidOperationException
Exception message: Error during serialization or deserialization using the JSON JavaScriptSerializer. The length of the string exceeds the value set on the maxJsonLength property.
...全文
1945 8 打赏 收藏 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
szjarvis 2016-07-15
  • 打赏
  • 举报
回复
<system.web.extensions> <scripting> <webServices> <jsonSerialization maxJsonLength="20971520" /> </webServices> </scripting> </system.web.extensions>
正怒月神 版主 2016-07-15
  • 打赏
  • 举报
回复
使用Post方式访问。
  • 打赏
  • 举报
回复
说得更“傻瓜”一点,就是你现在的 asp.net 端的端程序,例如查询数据时写 select a,b,c,d from [your table] where ....... 只要直接改为 select top 100 a,b,c,d from [your table] where 顺序编号>@index and ...... 就可以了。 这也许费点心。但是这比那些一旦踩到“地雷”上就还要去奋不顾身去瞎扯什么修改自己身参数继续勇闯红线的做法要好。一个好的程序员知道“分寸”。当你发现asp.net 设置了 4M 极限,你就应该考虑自己用1 M 可能都嫌多、都可能不小心跟系统不兼容。而不是去改什么系统参数。
  • 打赏
  • 举报
回复
你如果把大小超过 4M 的 json 字符串通过 ajax 方式穿来传去地,你可以想象一下,你的 web 应用的用户体验应该是多么低级啊?! 假设要加载一个 Grid 中的数据,那么一次下载操作应该仅仅下载100条数据(或者说1页数据)。下一次加载数据时的请求应该有一个“起始行号”参数,例如从101条开始,从201条开始....... 设计好信令通讯协议,是考验你的经验值的。而初学者才会去触碰到那些本已经千锤百炼的极限参数的“红线”。
  • 打赏
  • 举报
回复
默认长度为 2097152 个字符,这还不够用? 那么你应该考虑认真设计通讯信令协议。默认设置,通常都是千锤百炼之后的一个极限数值。再胡乱设置就比较危险了。
insus 2016-07-11
  • 打赏
  • 举报
回复
使用json,使用POST,不要使用GET.
myhope88 2016-07-11
  • 打赏
  • 举报
回复
webconfig配置传输大小大一点,另外用post提交
  • 打赏
  • 举报
回复
在config里设置json的maxlength,前阵子还有人在csdn问的

62,270

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧