gpt4 book ai didi

java - Spring react : convert Flux> to Flux

转载 作者:行者123 更新时间:2023-12-02 01:45:17 26 4
gpt4 key购买 nike

我有端点:/upstreams

它将返回以下格式的 Json:

{
"next" : "String",
"data" : [
{
"id" : "String",
"name" : "String"
}
]
}

我有几个像这样的端点,所以我创建了一个包装类

@Data
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class ResponseWrapper<T> {

private List<T> data;

private String next;

}

对于/upstream上面的响应,数据类型是 Upstream

@Data
@NoArgsConstructor
@JsonIgnoreProperties(ignoreUnknown = true)
public class Upstream extends Node {

private String id;

private String name;

}

现在我有一项服务必须返回 Flux<Stream> (或List<Stream>?),所以我创建了这种方法

@Override
public Flux<Stream> getAllNodes() {
var endpoint = "/upstream";

var response = webClient.get().uri(endpoint).retrieve()
.bodyToMono(new ParameterizedTypeReference<ResponseWrapper<Upstream>>() {
});

return ???;
}

如何转换 ResponseWrapper<Upstream>所以它返回 Flux<Stream>List<Stream>

我猜.flatMap()map() ,但是正确的用法是什么?

非常感谢

最佳答案

我相信你的var responseMono<ResponseWrapper<Upstream>> ,所以像这样:

return response.flatMapMany(pesponseWrapper -> Flux.fromIterable(pesponseWrapper.getData()));

关于java - Spring react : convert Flux<Wrapper<X>> to Flux<X>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53753914/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com