Декодирование ByteArray с помощью Spring 5 Framework WebFlux

Я пытаюсь использовать новую среду Spring WebFlux с kotlin. И я не могу найти, где я ошибаюсь в этом коде (myService):

fun foo(): Flux<ByteArray> { val client = WebClient.create("http://byte-array-service") return client .get() .uri("/info") .accept(MediaType.APPLICATION_OCTET_STREAM) .exchange() .flatMapMany { r -> r.bodyToFlux(ByteArray::class.java) } } 

Этот метод возвращает Flux с 7893 байтами, и я знаю, что не все байты, отправленные byte-array-service. Если я использую шаблон старого стиля, все в порядке

 fun foo(): Flux<ByteArray> { val rt = RestTemplate() rt.messageConverters.add( ByteArrayHttpMessageConverter()) val headers = HttpHeaders() headers.accept = listOf(MediaType.APPLICATION_OCTET_STREAM) val entity = HttpEntity<String>(headers) val r = rt.exchange("http://byte-array-service/info", HttpMethod.GET,entity, ByteArray::class.java) return Flux.just(r.body) } 

он возвращает все 274124 байта, отправленные из байта-массива-службы

вот мой потребитель

 fun doReadFromByteArrayService(req: ServerRequest): Mono<ServerResponse> { return Mono.from(myService .foo() .flatMap { accepted().body(fromObject(it.size)) }) } 

Intereting Posts
Как изменить поле участника с отражением Котлина? Локальные функции доступа к родительским переменным с тем же именем Как проверить функции расширения Kotlin? Есть ли какие-либо документы об модификаторах доступа в Котлин? Как проверить вызов setter в kotlin с помощью mockito? Kotlin – Использование Enums для извлечения Char Преобразовать массив в список в Котлине kotlin coroutine throws java.lang.IllegalStateException: уже возобновлено, но получил значение Место Почему код в выражении объекта может обращаться к переменным из области, содержащей его в kotlin? Есть ли способ показать все функции расширения данного класса Kotlin в Intellij IDE? Функция статического расширения на Java-классе Spring Boot – не может включать статический ресурс Kotlin и новый ActivityTestRule: @Rule должен быть общедоступным Есть ли способ связать свойство appConfig с tornadofx? правильный способ запуска приложения kotlin из задачи градации