响应主体为空

时间:2019-01-30 21:59:54

标签: java spring-boot reactive-programming

以下示例返回一个空的响应正文(期望existingUser)。
知道为什么吗?
状态码正确。

@PutMapping("/{userId}")
public Mono<ResponseEntity<User>> updateUser(@PathVariable(value = "userId") String userId,
                                               @Valid @RequestBody User user) {
    return userRepo.findById(userId)
            .flatMap(existingUser -> {
                existingUser.setFirstName(user.getFirstName());
                existingUser.setLastName(user.getLastName());
                existingUser.setEmail(user.getEmail());
                existingUser.setActive(user.isActive());
                return userRepo.save(user);
            })
            .map(updatedUser -> new ResponseEntity<>(updatedUser, HttpStatus.NO_CONTENT))
            .defaultIfEmpty(new ResponseEntity<>(HttpStatus.NOT_FOUND));
}

调试模式图片:

enter image description here

1 个答案:

答案 0 :(得分:0)

它之所以行不通,是因为我返回的HTTP状态代码204 - NO_CONTENT
(大声笑)。