将mono< void>转换为mono< response>

fxnxkyjh  于 2021-07-23  发布在  Java
关注(0)|答案(1)|浏览(962)

我有一个服务电话,返回单声道。现在,在给用户提供api响应的同时,我想发送一些响应。我试过用平面图和Map,但都不行。它给了我一个空的身体作为回应。
下面是代码示例

//Service Call
    public Mono<Void> updateUser(....) {
        .......... return Mono<Void>...
    }

   //Rest Controller
   @PostMapping(value = "/user/{id})
    public Mono<Response> update(......) {
        return service.updateUser(....)
                .map(r -> new Response(200, "User updated successfully"));

    }

当我点击上面的api时,它会给我一个空的主体作为响应。有人能帮我把尸体弄到api里吗?
谢谢您

hc2pp10m

hc2pp10m1#

如果要忽略 Mono 或者 Flux 然后触发下一个你可以使用 then 操作员,或 thenReturn 接线员。
不同的是 then 需要一个 MonothenReturn 取一个具体值(女巫将被包裹在 Mono .

@PostMapping(value = "/user/{id})
public Mono<Response> update(......) {
    return service.updateUser(....)
            .thenReturn(new Response(200, "User updated successfully"));
}

相关问题