package com.fdkankan.common.response; import com.alibaba.fastjson.JSONObject; import com.fdkankan.common.response.ResultData; import org.springframework.core.MethodParameter; import org.springframework.http.MediaType; import org.springframework.http.converter.HttpMessageConverter; import org.springframework.http.server.ServerHttpRequest; import org.springframework.http.server.ServerHttpResponse; import org.springframework.web.bind.annotation.RestControllerAdvice; import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice; import java.util.Objects; @RestControllerAdvice public class BaseResponseAdvice implements ResponseBodyAdvice { @Override public boolean supports(MethodParameter methodParameter, Class> aClass) { return true; } @Override public Object beforeBodyWrite(Object body, MethodParameter methodParameter, MediaType mediaType, Class> aClass, ServerHttpRequest serverHttpRequest, ServerHttpResponse serverHttpResponse) { // if(serverHttpRequest.getURI().getPath().contains("feign")){ // return body; // } System.out.println("响应拦截成功"); // if(Objects.isNull(body)){ // return ResultData.ok(); // } if(body instanceof String){ return JSONObject.toJSONString(ResultData.ok(body)); } if (body instanceof ResultData) { return body; } else { return ResultData.ok(body); } } }