Я хочу подписаться на отправленное сервером событие (см. Пример ниже)
Между клиентским браузером и сервером java находится другое приложение, которое использует промежуточное ПО для сжатия узла.
ЭтоПромежуточное ПО вызывает ERR_INCOMPLETE_CHUNKED_ENCODING, когда я пытаюсь достичь этого события, отправленного сервером через браузер.
Чтобы запустить его, я должен сделать .flush (), который описан здесь более подробно (дляприложение nodejs): https://github.com/expressjs/compression/blob/master/README.md#server-sent-events
Мой код в настоящее время выглядит следующим образом:
@RequestMapping(method = RequestMethod.GET, value = "/fluxTest", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux<String> getFluxStream(HttpServletRequest request) {
String[] randomNames = { "Steve", "Dirk", "Jens", "Rene"};
return Flux.interval(Duration.ofSeconds(1))
.map(sequence -> "{\"name\": \"" + randomNames[new Random().nextInt(randomNames.length)] + "\"}");
}
Как я могу вызвать .flush () в Java, как описано в документации по сжатию nodejs?
Спасибо !!!