1

次のコードを使用して、大きな (〜 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"]);
        }
    });

実行すると、「InternalError: 割り当てサイズのオーバーフロー」が出力されます。ファイルを小さくしないでこれを回避する方法はありますか?

4

1 に答える 1

0

バッファを設定する必要があります。しかし、一体なぜそんなに多くのデータを渡しているのでしょうか? これは、どのユーザーにとっても非常に不合理な待機です。

編集

バッファリングは、実際には ajax 側から実行できるものではありません ( How to buffering an Ajax Request? によると)。ただし、サーバー側で何かを設定して (サーバーがデータを返す場合)、それを分割して送信し、ajax を使用して各部分を要求することができます。

それがあなたのサーバーでない場合、またはAPIなどからのリクエストでない場合は、返されるオブジェクトのサイズを定義するパラメーターを受け入れるかどうかを確認してください。このようにして、チャンクでリクエストできます。

于 2013-06-27T18:10:32.863 に答える