gpt4 book ai didi

javascript - JQuery的Ajax是否引用web.config中的maxJsonLength属性

转载 作者:行者123 更新时间:2023-11-28 17:43:25 26 4
gpt4 key购买 nike

在我的 ASP.NET 站点中,单击搜索按钮时,我使用 Jquery AJAX 从 Web 服务加载 json 数据(实际上是字符串):

$.ajax({
type: "POST",
url: url,
data: JSON.stringify(parameterArray),
contentType: "application/json",
dataType: "json",
success: function(response) {
d = JSON.parse(response.d);
}

当返回字符串变得太大时,页面将停止响应。我必须转到 web.config 并添加此属性才能使网站正常工作:

<jsonSerialization maxJsonLength="2147483644"/>

以下是应用程序在将数据返回到浏览器之前如何处理搜索结果:

JavaScriptSerializer serializer = new JavaScriptSerializer();
serializer.MaxJsonLength = Int32.MaxValue;
string strData = dService.searhforData(ipt);
List<Dictionary<string, object>> lRow = processData(strData);
string r = serializer.Serialize(lRow);
return r;

如果 Json 字符串太长,页面就会停止响应,控制台窗口中不会出现任何错误。当我在.Net应用程序端调试时,serializer.Serialize(lRow);运行顺利并成功返回r,之后页面上的加载图标就这样了继续旋转。如果我在页面上按F5,就会出现搜索数据。

我的问题是,如果 JQuery 的 Ajax 引用了 web.config 的最大 json 字符串长度,为什么我在互联网上找不到任何与此相关的信息?

最佳答案

我确定 JSON.parse() 可以处理的数据量存在限制,但这与您的问题无关。

您的web.config 文件保存要在服务器端使用的设置。客户端的JS与此完全无关。如果您需要修改该设置,那是因为您的 ASP.Net 代码生成的 JSON 响应时间比之前默认设置 jsonSerialization 允许的时间长。

如果您在发出失败的请求后检查浏览器控制台,您很可能会在响应中看到一个错误,从而引导您解决问题。

关于javascript - JQuery的Ajax是否引用web.config中的maxJsonLength属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47387601/

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