Как отправить данные по частям, используя Flux? - PullRequest
0 голосов
/ 08 июня 2019

Я играю с Учебное пособие по баэльдунгу из github .Я хотел посмотреть, как браузер получает данные по частям.Поэтому я добавил свой простой метод контроллера:

    @GetMapping("/flux")
    public Flux<Employee> getFlux() {
        return Flux.fromIterable(employeeRepository.employeeData.values())
                .delayElements(Duration.ofMillis(2_000))
                .take(3);
    }

Но когда я смотрю на сеть браузера, данные извлекаются в один блок после 6 секундной задержки.Как это сделать правильно?

1 Ответ

0 голосов
/ 08 июня 2019

Это происходит потому, что вы не указали тип носителя в ответе.

Попробуйте этот код.

@GetMapping(value = "/test",produces = MediaType.APPLICATION_STREAM_JSON_VALUE)
public Flux getMapping() {
    return Flux.interval(Duration.ofMillis(300)).map(f -> "HI");
}

Спасибо
Vimalesh

...