HTTP服务器响应404时未调用Spring WebClient异步回调

时间:2018-11-25 16:06:50

标签: spring webclient

我遇到的一个问题如标题所示,代码如下:

Mono<Account> accountMono = client.get()
    .uri("accounturl")
    .accept(MediaType.APPLICATION_JSON)
    .exchange()
    .flatMap(response -> {
                            if (response.statusCode().equals(HttpStatus.OK)) {
                              return response.bodyToMono(Account.class);
                            } else { 
                              return Mono.empty();
                            }
                          });

accountMono.subscribe(result -> callback(result));  

```

Server response 404 。我尝试创建一个空帐户,但未调用callback()。好像没有发出空的Mono

1 个答案:

答案 0 :(得分:0)

  

服务器响应404,我尝试创建一个空帐户

您没有创建空的Account。您返回的是一个空的Mono,即一个永远不会发出任何东西的Mono

如果您要返回一个发出空帐户的Mono,则需要

return Mono.just(new Account());
相关问题