Skip to content

Commit 47bfc72

Browse files
committed
feat: 添加统一返回格式通知类 SimpleResAdvice
1 parent c698f3b commit 47bfc72

1 file changed

Lines changed: 34 additions & 0 deletions

File tree

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package info.cadecode.simple.common.response;
2+
3+
import org.springframework.core.MethodParameter;
4+
import org.springframework.http.MediaType;
5+
import org.springframework.http.server.ServerHttpRequest;
6+
import org.springframework.http.server.ServerHttpResponse;
7+
import org.springframework.web.bind.annotation.ControllerAdvice;
8+
import org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice;
9+
10+
/**
11+
* @author Cade Li
12+
* @date 2021/7/16
13+
* @description: 统一接口返回格式
14+
*/
15+
@ControllerAdvice(basePackages = {"info.cadecode.simple.controller"})
16+
public class SimpleResAdvice implements ResponseBodyAdvice {
17+
@Override
18+
public boolean supports(MethodParameter returnType, Class converterType) {
19+
return true;
20+
}
21+
22+
@Override
23+
public Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType,
24+
Class selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) {
25+
26+
if (body instanceof SimpleRes.ResBuilder) {
27+
return body;
28+
}
29+
if (body instanceof String) {
30+
return SimpleRes.ok(body).json();
31+
}
32+
return SimpleRes.ok(body);
33+
}
34+
}

0 commit comments

Comments
 (0)