gpt4 book ai didi

asp.net - 超出 JavaScriptSerializer.MaxJsonLength。处理这个问题的最佳做法是什么?

转载 作者:可可西里 更新时间:2023-11-01 01:26:54 39 4
gpt4 key购买 nike

我有大量数据要使用 jQuery 的 $.ajax() 函数发送给客户端。我在 ASP.NET Web 服务中调用一个返回 JSON 数据的方法。对于大多数搜索来说一切都很好,但是当我有一个大数据集要返回时,我遇到了 JavaScriptSerializer MaxJsonLength 属性的问题。处理这个问题的最佳做法是什么?我不想随意设置最大长度。如果返回的数据大于当前最大值,我可以在 Web 服务中设置 MaxJsonLength 吗?或者我应该重新编写数据 block 并将其发送到客户端吗?

这是网络服务的相关片段:

Dictionary<string, object> jsonValuePairs = new Dictionary<string, object>();
//add some data to the dictionary...
return System.Web.Script.Serialization.JavaScriptSerializer.Serialize(jsonValuePairs);

最佳答案

设置从客户端脚本调用的 Web 方法的最大长度的唯一方法是通过 web.config 文件(如下)。你设置这个有什么问题?每次通过多个 xhr 调用流式传输部分数据时,我都会这样做。

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

更新:默认大小为 2097152,相当于 4 MB 的 Unicode 字符串数据。您真的要将那么多数据发送回客户端吗?如果是这样,您可能需要查看应用程序设计,因为用户体验会缓慢且繁琐。

关于asp.net - 超出 JavaScriptSerializer.MaxJsonLength。处理这个问题的最佳做法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1045984/

39 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com