我发送顺序请求并尝试将响应打印为字符串:
Flux.fromIterable(keywordsList).map(i -> client.get()
.uri("/hello?now-word=" + i)
.accept(MediaType.APPLICATION_JSON)
.retrieve()
.bodyToMono(String.class))
.subscribe(item -> System.out.println("item: " + item.toString()));
但这就是我得到的:
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
item: MonoFlatMap
我试图使用FlatMapIterable,但我不知道如何正确使用它。
截至目前,我正在循环发送请求。这是代码,这对我有用:
for(int i = 3; i <= len; i++) {
String searchStr = searchString.substring(0, i);
Mono<ClientResponse> result = client.get()
.uri(autocompleteUri + searchString)
.accept(MediaType.APPLICATION_JSON)
.exchange();
String result1 = ">> result = " + result.flatMap(res -> res.bodyToMono(String.class)).block();
}
但我想知道我们能做到这一点的不同方式。这是关于这个项目的博客: