如何返回一个Mono空对象以便它被application/json格式接受?

问题描述 投票:0回答:1

我正在为我的 http 请求使用异常函数。对于我的任务,我需要读取响应,如果它给出内部服务器错误,我们必须返回一个空对象。 我尝试使用 Mono.empty() 作为异常函数,仅将 mono 作为返回对象。 但现在我收到错误

UnsupportedMediaTypeException: Content type 'text/html;charset=UTF-8' not supported
有没有办法返回一个空的 Mono 而不会遇到这个错误。

java spring-boot http spring-mvc mono
1个回答
0
投票

如果您使用 Employee.class 且不为空,则可以返回 Mono.just(new Employee());如果为空,请使用 @JsonInclude(JsonInclude.Include.NON_NULL) 注释

For Example

@JsonInclude(JsonInclude.Include.NON_NULL)
class Employee{
   @JsonProperty("NAME")
   private String name;

   @JsonProperty("SALARY")
   private String salary;
}
 
@GetMapping(value = "/employee")
public Mono<String> getEmployeeDetails() {
    if(employee details not found){
       //This is for Empty Json Response e.g {}
       return Mono.just(new Employee());
    }
    
    // If you have emplyee details e.g. {"NAME":"xyz", "SALARY":"10000"}
    return Mono.just(employeeDetails);
}
© www.soinside.com 2019 - 2024. All rights reserved.