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();
文章标签: SpringBoot
推荐指数:

真诚点赞 诚不我欺~

Spring boot ResponseBodyAdvice 统一返回 feign 调用字符串问题解决

点赞 收藏 评论

关于作者

青苗
青苗

青苗幼儿园园长

等级 LV5

粉丝 20

获赞 47

经验 1182