我偶然发现一个小问题.
我收到一个 JSON响应,其中包含一个具有67615个条目的字节数组.
现在,它增加了一个
我收到一个 JSON响应,其中包含一个具有67615个条目的字节数组.
现在,它增加了一个
`[....,154,156,);jQuery1910039778258679286416_1363006432850(181,104,...]
每〜7300个字符
现在,当我使用ajax方法来解析它是如何正常工作的,它给我一个错误,因为回调使响应无效
元素列表后面的SyntaxError:missing]
…,184,1,26,65,140,86,211,16,194,210,174,1); jQuery17203250109862964784_13639643449 …
所以它不再有效了
我用它来解析它
$.ajax({ url : url,cache : false,dataType : "jsonp",crossDomain : true,success : function(root) { console.log(root) } })
这可能是asp服务器给我的对象或解决方法有问题吗?
提前致谢
EDIT1:
[WebMethod(Description = " ",EnableSession = true)] [ScriptMethod(UseHttpGet = true,ResponseFormat = ResponseFormat.Json)] public Borrower getSessionedBorrowerHeader(ref sysmessage aMessage) { if (!(userValidated(ref aMessage))) return null; BorrowerControl borrowerControl = new BorrowerControl(LOCALconnectionStringDb,WEBconnectionStringDb,STATSconnectionStringDb,LIBconnectionStringDb,CATconnectionStringDb,Session); Borrower returnObj = borrowerControl.getSessionedBorrowerHeader(ref aMessage); borrowerControl.Dispose(); return returnObj; }
如果你需要更多的代码告诉我不进ASP:
EDIT2:
该怎么办:(
这是JSON的答案
解决方法
这听起来像ASP限制因素.这不是jQuery具体的,而是来自ASP服务器的任何JSON响应.我也在ColdFusion服务器上看到过.找到此设置,看看您的限制是否与您所触及的限制相关.看看你能不能把它增加到你需要的
<system.web.extensions> <scripting> <webServices> <jsonSerialization maxJsonLength="x"></jsonSerialization> </webServices> </scripting> </system.web.extensions>
如果您无法访问服务器设置,您还可以在代码中设置值.这是一个MSDN参考:
它还说:
The maximum length of JSON strings. The default is 2097152 characters,which is equivalent to 4 MB of Unicode string data.
这是超过你的长度〜7300个字符.但也许有人调整了这个设置.
我也很好奇,你看到’多个’返回回调方法.通常我认为,这个限制只会截断第一个回调结果的结果.也许你还有其他的事情吗?