Как написать javascript на стороне клиента, чтобы своевременно получать и анализировать "фрагментированный" ответ?

Я использую платформу воспроизведения для генерации фрагментированного ответа. Код это:

class Test extends Controller {
    public static void chunk() throws InterruptedException {
        for (int i = 0; i < 10; i++) {
            String data = repeat("" + i, 1000);
            response.writeChunk(data);
            Thread.sleep(1000);
        }
    }
}

Когда я использую браузер для посещения http: // localhost: 9000 / test / chunk , я вижу, что отображаемые данные увеличиваются каждую секунду. Но когда я пишу функцию javascript для получения и обрабатывать данные, обнаружил, что они будут заблокированы до тех пор, пока не будут получены все данные.

Код такой:

$(function(){
    $.ajax(
        "/test/chunked", 
        {
            "success": function(data, textStatus, xhr) {
                alert(textStatus);
            }
        }
    );
});

Я вижу окно сообщения, всплывающее через 10 секунд, когда все данные получены.

Как получить поток и обработать данные вовремя?

35
задан Pacerier 2 July 2012 в 16:42
поделиться