fix: 修复 RestControllerAdvice 统一返回导致 Knife4j 文档请求异常
This commit is contained in:
parent
7cf5e0018c
commit
a0b1afc546
@ -29,6 +29,8 @@ import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice;
|
|||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
|
||||||
import top.charles7c.cnadmin.common.annotation.NoResponseAdvice;
|
import top.charles7c.cnadmin.common.annotation.NoResponseAdvice;
|
||||||
import top.charles7c.cnadmin.common.model.vo.R;
|
import top.charles7c.cnadmin.common.model.vo.R;
|
||||||
|
|
||||||
@ -41,13 +43,15 @@ import top.charles7c.cnadmin.common.model.vo.R;
|
|||||||
@RestControllerAdvice
|
@RestControllerAdvice
|
||||||
@RequiredArgsConstructor
|
@RequiredArgsConstructor
|
||||||
public class GlobalResponseBodyAdviceHandler implements ResponseBodyAdvice<Object> {
|
public class GlobalResponseBodyAdviceHandler implements ResponseBodyAdvice<Object> {
|
||||||
|
private static final String[] EXCLUDE = {"MultipleOpenApiWebMvcResource", "SwaggerConfigResource",};
|
||||||
|
|
||||||
private final ObjectMapper objectMapper;
|
private final ObjectMapper objectMapper;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean supports(MethodParameter methodParameter, Class<? extends HttpMessageConverter<?>> converterType) {
|
public boolean supports(MethodParameter methodParameter, Class<? extends HttpMessageConverter<?>> converterType) {
|
||||||
return !methodParameter.getParameterType().isAssignableFrom(R.class)
|
return !methodParameter.getParameterType().isAssignableFrom(R.class)
|
||||||
&& !methodParameter.hasMethodAnnotation(NoResponseAdvice.class);
|
&& !methodParameter.hasMethodAnnotation(NoResponseAdvice.class)
|
||||||
|
&& !StrUtil.equalsAny(methodParameter.getDeclaringClass().getSimpleName(), EXCLUDE);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
Reference in New Issue
Block a user