我正在创建一个聚合服务,该服务需要调用api并基于进行第二次调用的响应等。因此,我正在调用api链,每个api都取决于上一个的响应。
Example Scenario:
request 1 {"Date1" : "2019-03-03"}
response 1 {"price" : 10}
request 2 {"Date1" : "2019-03-03", "price":10}
response 2 {"recommendedPrice" : 8}
request 2 {"Date1" : "2019-03-03", "price":10, "recommendedPrice":8}
and so on
我创建了这个
public Mono<Result> getFinalRes(Request req){
res = client.post()
.uri(url)
.body(BodyInserters.fromObject(request))
.exchange()
.flatMap(res -> res.bodyToMono(PriceTuple.class))
return res.subscribe(res -> getApi2(res,request ))
}
Or
public Mono<Result> getFinalRes(Request req){
res = client.post()
.uri(url)
.body(BodyInserters.fromObject(request))
.exchange()
.flatMap(res -> getApi2(res,request ))
}
getApi2()再次做类似的事情。我以这种方式进行链接是否正确,或者有更好的方式进行这种请求链接。