Spring boot ResponseBodyAdvice 统一返回 feign 调用字符串问题解决
青苗 | 303 |
2023-03-21
Spring boot ResponseBodyAdvice 统一返回 feign 调用字符串问题解决
- 统一返回类核心处理逻辑
@Override
public Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType, Class selectedConverterType,
ServerHttpRequest request, ServerHttpResponse response) {
if (body instanceof RestResult) {
return body;
}
RestResult restResult = RestResult.ok(body);
if (returnType.getParameterType().isAssignableFrom(String.class)) {
// 字符串类型特殊处理
return JSON.toJSONString(restResult);
}
return restResult;
}
- feign 调用处理方式
关键部分设置 produces 属性
@GetMapping(value = "/testStr", produces = "application/json; charset=UTF-8")
RestResult<String> getTestStr();
推荐指数:
真诚点赞 诚不我欺~