Ich habe eine Anforderung, meine HttpResponse zu bearbeiten, um Header-Wert hinzuzufügen. Ich suchte nach einem einzelnen Punkt, um es zu implementieren und fand, dass ResponseBodyadvice
hilfreich wäre.Wie implementiert ResponseBodyAdvice auf allen Controllern?
Aber beide Methoden, die in meiner neuen Klasse überging, wurde nie aufgerufen. Könnten Sie mir bitte sagen, ob ich irgendwelche Konfigurationen verpasst habe?
@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;
}
}
Alle meine Controller @RequestMapping Annotation und mvc haben, ist Anmerkung angetrieben. Ich verwende auch MappingJackson2Json als Standardansichten – Ultimata