gpt4 book ai didi

java - Reactor REST Mono 返回 ScanAvailable : true

转载 作者:行者123 更新时间:2023-12-03 19:31:38 25 4
gpt4 key购买 nike

我一直在研究使用 Reactor 的 Java 微服务,以便更轻松地进行异步调用。在我的端点上,我有以下代码:

@HystrixCommand
@ApiOperation(value = "Resolve Dispute")
@PostMapping(consumes = APPLICATION_JSON_VALUE, produces = APPLICATION_JSON_VALUE, path = "/resolve")
public Mono<RestResponse<RestResponseResult>> resolveDispute(@RequestBody ResolveDisputeRequest requestJson, @RequestParam("appToken") String appToken) {
if (apiAppToken.equals(appToken)) {
EnumsUtils.getEnumValue(DisputeReason.values(), requestJson.getResolutionType(), requestJson);
return facebookApiService.resolveDispute(requestJson).single();
} else {
throw new InvalidTokenException(requestJson.getUserId());
}
}

我希望返回一个对象
{
result: true/false
}

但是,当我检查代码时,我意识到在代码完成其过程之前发出了响应。给出的回应是:
{
"scanAvailable": true
}

这让我相信这与 Reactor 的异步性质有关,但不适合我的需求。

我应该如何正确使用 Reactor 以获得所需的响应?我不想使用 block使调用阻塞的方法。

在此先感谢您提供的任何帮助。

祝一切顺利,

亚历杭德罗

最佳答案

我面临aspectj编织的一些问题。

回复 {"scanAvailable":true}来自 mono.map(x -> joinPoint.proceed()) ,应该是 mono.flatMap(x -> (Mono) joinPoint.process()) .

关于java - Reactor REST Mono 返回 ScanAvailable : true,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53822069/

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