Php AJAX响应大小限制
我使用AJAX异步调用一个PHP脚本,该脚本返回一个JSON对象的大型序列化数组(约75kbs或80k个字符)。每次我尝试返回它时,它都会达到3000个字符的限制。服务器上或jQuery的ajax实现中是否设置了最大大小Php AJAX响应大小限制,php,jquery,ajax,size,Php,Jquery,Ajax,Size,我使用AJAX异步调用一个PHP脚本,该脚本返回一个JSON对象的大型序列化数组(约75kbs或80k个字符)。每次我尝试返回它时,它都会达到3000个字符的限制。服务器上或jQuery的ajax实现中是否设置了最大大小 编辑:3000字符限制是Chrome限制,FF限制是10000字符,Safari没有限制。我猜除了更改代码以分割/减少返回数据之外,没有其他解决方案。您可以分割JSON并使用$.ajax一部分一部分地获取 我为你树立了一个榜样 Html端: <!doctype html&
编辑:3000字符限制是Chrome限制,FF限制是10000字符,Safari没有限制。我猜除了更改代码以分割/减少返回数据之外,没有其他解决方案。您可以分割JSON并使用$.ajax一部分一部分地获取 我为你树立了一个榜样 Html端:
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<script src="jquery.js"></script>
<script>
$(document).ready(function() {
window.result_json = {};
$.get("x.php?part=size",function(data){
var count = data;
for (var i = 0; i <= count; i++) {
$.ajax({
dataType: "json",
url: "x.php",
async: false,
data: "part="+i,
success: function(data){
$.extend(window.result_json,data);
}
});
};
console.log(window.result_json);
});
});
</script>
</head>
<body>
</body>
</html>
文件
$(文档).ready(函数(){
window.result_json={};
$.get(“x.php?part=size”,函数(数据){
var计数=数据;
对于(var i=0;i相似:这是ASP——我看到搜索时……可能会有一些启发。公认的答案是,重要的是JSON数组的深度,而不是大小。当查看3k字符响应时,它是在数组/对象的开头被截断,还是在随机位置截断?错误是逻辑性的还是显式的?它返回开头在期望返回值中,然后在中间有一个省略号,然后返回预期返回值的结尾。
<?php
if(isset($_GET['part'])){
function send_part_of_array($array,$part,$moo){
echo json_encode(array_slice($array, $part * $moo,$moo,true),JSON_FORCE_OBJECT);
}
$max_of_one = 3;
$a = array("a","b","c","d","e","f","g","h","i","j");
if($_GET['part'] == 'size'){
echo round(count($a) / $max_of_one);
}else{
send_part_of_array($a,$_GET['part'],$max_of_one);
}
}
?>