-
Anonymous
Как использовать RequestBodyAdvice
Сообщение
Anonymous »
Код: Выделить всё
@ControllerAdvice
public class RequestBodyAdviceChain implements RequestBodyAdvice {
@Override
public boolean supports(MethodParameter methodParameter, Type type,
Class< ? extends HttpMessageConverter< ? >> aClass) {
return true;
}
@Override
public Object handleEmptyBody(Object o, HttpInputMessage httpInputMessage, MethodParameter methodParameter,
Type type, Class< ? extends HttpMessageConverter< ? >> aClass) {
return o;
}
@Override
public HttpInputMessage beforeBodyRead(HttpInputMessage httpInputMessage, MethodParameter methodParameter,
Type type, Class< ? extends HttpMessageConverter< ? >> aClass) throws IOException {
return httpInputMessage;
}
@Override
public Object afterBodyRead(Object o, HttpInputMessage httpInputMessage, MethodParameter methodParameter, Type type,
Class< ? extends HttpMessageConverter< ? >> aClass) {
return o;
}
}
В идеале поток должен сначала достичь этой функции, а затем перейти к контроллеру, но это не работает.
Подробнее здесь:
https://stackoverflow.com/questions/352 ... bodyadvice
1766624470
Anonymous
[code]@ControllerAdvice
public class RequestBodyAdviceChain implements RequestBodyAdvice {
@Override
public boolean supports(MethodParameter methodParameter, Type type,
Class< ? extends HttpMessageConverter< ? >> aClass) {
return true;
}
@Override
public Object handleEmptyBody(Object o, HttpInputMessage httpInputMessage, MethodParameter methodParameter,
Type type, Class< ? extends HttpMessageConverter< ? >> aClass) {
return o;
}
@Override
public HttpInputMessage beforeBodyRead(HttpInputMessage httpInputMessage, MethodParameter methodParameter,
Type type, Class< ? extends HttpMessageConverter< ? >> aClass) throws IOException {
return httpInputMessage;
}
@Override
public Object afterBodyRead(Object o, HttpInputMessage httpInputMessage, MethodParameter methodParameter, Type type,
Class< ? extends HttpMessageConverter< ? >> aClass) {
return o;
}
}
[/code]
В идеале поток должен сначала достичь этой функции, а затем перейти к контроллеру, но это не работает.
Подробнее здесь: [url]https://stackoverflow.com/questions/35277727/how-to-use-requestbodyadvice[/url]