[SPRING] Spring (REST)에서 REST 응답을 어떻게 장식 할 수 있습니까?
SPRINGSpring (REST)에서 REST 응답을 어떻게 장식 할 수 있습니까?
JSON 응답으로 인코딩 된 다양한 객체를 반환하는 스프링 부팅 응용 프로그램이 있는데이를 포스트 프로세스로 처리하여 특정 수퍼 클래스에 정보를 추가하고 싶습니다.
Jackson과 JSON으로 인코딩되기 전에 내 REST 엔드 포인트에서 오브젝트 응답을 필터링, 가로 채기 등의 방법으로 처리 할 수 있습니까?
필터는 HttpServlet {Request, Response} 수준에서 작동하기 때문에 작동하지 않습니다.
해결법
-
==============================
1.나는 ResponseBodyAdvice가 당신의 친구라고 생각합니다. 기본적으로 :
나는 ResponseBodyAdvice가 당신의 친구라고 생각합니다. 기본적으로 :
여기에 반환 된 문자열을 모두 가로 채고 대문자로 만듭니다.
@ControllerAdvice public class MyResponseBodyAdvisor implements ResponseBodyAdvice<String> { @Override public boolean supports(MethodParameter returnType, Class<? extends HttpMessageConverter<?>> converterType) { return returnType.getParameterType().equals(String.class); } @Override public String beforeBodyWrite(String body, MethodParameter returnType, MediaType selectedContentType, Class<? extends HttpMessageConverter<?>> selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) { return body.toUpperCase(); } }
from https://stackoverflow.com/questions/34982742/how-can-i-decorate-the-rest-response-in-spring-boot by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] web.xml에서 HttpServlet과 Spring Application Context를 연결하는 방법은 무엇입니까? (0) | 2019.02.15 |
---|---|
[SPRING] Spring에서 application.properties를 사용하여 프로파일을 설정하는 방법은 무엇입니까? (0) | 2019.02.15 |
[SPRING] 오래된 Struts 애플리케이션을 Spring 3.x와 통합하는 방법 (0) | 2019.02.15 |
[SPRING] Spring을 사용한 JSR-303 bean 검증은 시작되지 않습니다. (0) | 2019.02.15 |
[SPRING] Mac 10.12.1의 STS.app는 항상 .eclipse에 새로운 org.springsource.sts 폴더를 만듭니다. (0) | 2019.02.15 |