7

我需要编辑我的 HttpResponse 以添加标头值。我正在寻找单点来实现它,发现这ResponseBodyadvice会很有帮助。

但是在我的新类中覆盖的两种方法都没有被调用。你能否告诉我是否错过了任何配置。

@ControllerAdvice
public class EditResponseHeader implements ResponseBodyAdvice<object> {


@Override
public boolean supports(MethodParameter returnType,
        Class<? extends HttpMessageConverter<?>> converterType) {

   return true;
}

....

@Override
public Object beforeBodyWrite(Object body, MethodParameter returnType,
        MediaType selectedContentType,
        Class<? extends HttpMessageConverter<?>> selectedConverterType,
        ServerHttpRequest request, ServerHttpResponse response) {

    ....

    return body;
}

}
4

1 回答 1

1

关于什么 :

@Override
@ExceptionHandler(Exception.class)
public Response<?> beforeBodyWrite(Response<?> body, MethodParameter returnType,
                                   MediaType selectedContentType,
                                   Class<? extends HttpMessageConverter<?>> selectedConverterType,
                                   ServerHttpRequest request, ServerHttpResponse response) {

                ....

    return body;
}
于 2016-07-23T15:30:25.327 回答