Ajax 在Firefox 17.0.5中加载大型JSON对象

Ajax 在Firefox 17.0.5中加载大型JSON对象,ajax,json,firefox,memory,Ajax,Json,Firefox,Memory,我正在使用以下代码加载一个大的~300 MB JSON文件: $.ajax({ type: 'GET', url: path, dataType: 'json', data: {}, async: false, success: function(json_object) { console.log("success!"); } error: function

我正在使用以下代码加载一个大的~300 MB JSON文件:

$.ajax({
        type: 'GET',
        url: path,
        dataType: 'json',
        data: {},
        async: false, 
        success: function(json_object) {
            console.log("success!");
        } error: function(request, error) {
            console.log(request["statusText"]);
        }
    });

运行它会输出内部错误:分配大小溢出。有没有什么方法可以解决这个问题,而不需要将文件变小?

您需要设置一个缓冲区。然而,你到底为什么要传递这么多数据?这对任何用户来说都是极不合理的等待

编辑

根据本文,从ajax方面来说,缓冲并不是真正可以做到的事情。但是,如果您的服务器返回数据并将其分块发送,您可以在服务器端设置一些内容,然后使用ajax请求每个部分


如果不是您的服务器,或者不是您从API或其他方面请求的,那么请查看他们是否接受任何参数来定义返回对象的大小-这样您就可以成批请求它。

这是我为一小群不介意等待一点数据的用户构建的。数据全部进入d3可视化。你能告诉我更多关于如何设置这个缓冲区的细节吗?谢谢