我有一个包含以下数据结构的Flux。
[
{
"id": 181,
"date": "2020-06-25T14:49:04",
"status": "publish",
"type": "wprm_collection",
"link": "http://35.228.92.155/?post_type=wprm_collection&p=181",
"collection": {
"id": 181,
"name": "Menu-4",
"nbrItems": "3",
"items": {}
}
},
{...},
{...},
{...}
]下面的代码不能检索子对象并从中提供新的通量。
public Flux<Collection> getWeeklyMenus() {
System.out.println("Calling WP");
Mono<List<CollectionDetail>> collectionDetailList = client.get()
.uri("/wprm_collection")
.retrieve()
.bodyToFlux(CollectionDetail.class).collectList();
List<Collection> collections = new ArrayList();
collectionDetailList.flatMap(items->{
for(CollectionDetail item : items){
Collection collection = item.getCollection();
collections.add(collection);
}
return null;
});
return Mono.just(collections).flatMapMany(Flux::fromIterable);
}在本例中,如何在不阻塞流的情况下将Flux转换为Flux?
发布于 2020-06-27 04:38:07
不提取调用collectList()的列表,直接在Flux上工作怎么样?
解决方案:
public Flux<Collection> getWeeklyMenus() {
Flux<CollectionDetail> collectionDetailList = client.get()
.uri("/wprm_collection")
.retrieve()
.bodyToFlux(CollectionDetail.class);
return collectionDetailList
.map(CollectionDetail::getCollection);
}https://stackoverflow.com/questions/62602281
复制相似问题