我和baeldung tutorial的github一起玩。 我想看看浏览器是如何逐段检索数据的。所以我添加了简单的控制器方法:
@GetMapping("/flux")
public Flux<Employee> getFlux() {
return Flux.fromIterable(employeeRepository.employeeData.values())
.delayElements(Duration.ofMillis(2_000))
.take(3);
}
但是,当我查看浏览器网络时,经过6秒钟的延迟后,将在一个块中检索数据。 如何正确执行此操作?
答案 0 :(得分:0)
之所以发生这种情况,是因为您没有提及响应的媒体类型。
尝试此代码。
@GetMapping(value = "/test",produces = MediaType.APPLICATION_STREAM_JSON_VALUE)
public Flux getMapping() {
return Flux.interval(Duration.ofMillis(300)).map(f -> "HI");
}
谢谢,
维玛列什