Puede dividir su JSON y obtener con $ .ajax parte por parte
hice un ejemplo para usted
lado 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>
lado PHP (nombre del archivo es x. php):
<?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);
}
}
?>
primer lugar con $.get
(parte = tamaño), comprobar cuántos rebanada s.
segundo lugar con $.ajax
(parte = (int) PART-NUMBER), en bucle for conseguir las piezas de JSON uno por uno
Por último con $.extend
en para marge bucle nuevas conseguir elementos JSON y JSON viejo en window.result_json
NOTA: la variable $max_of_one
determina cuántas rebanadas desea publicar.
Similar: http://stackoverflow.com/q/1151987/1026459 –
Eso es ASP aunque: lo vi al buscar ... – RichieAHB
[Esta pregunta] (http://stackoverflow.com/questions/898477/ ajax-request-browser-limit) puede arrojar algo de luz. La respuesta aceptada indica que es la profundidad del array JSON lo que importa, no su tamaño. Cuando ves tu respuesta de 3k, ¿está cortada al comienzo de una matriz/objeto, o en un lugar aleatorio? – Bojangles