如何从RequestBodyAdviceAdapter中的afterBodyRead方法发送自定义响应?
我正在使用afterBodyRead来验证带有jsonschema的json对象。如果验证不正确,我想将有关错误的信息发送给客户端。
@Override
public Object afterBodyRead(Object body, HttpInputMessage inputMessage, MethodParameter parameter,
Type targetType, Class<? extends HttpMessageConverter<?>> converterType) {
String json = (new Gson()).toJson(body);
try {
validator.checkSchema(schema, new JSONObject(json));
} catch (Exception ex) {
ex.printStackTrace();
//redirect or return customized error
}
return body;
}
afterBodyRead中没有HttpResponse,因此无法返回该消息。有什么方法可以将错误消息返回给客户端吗?
答案 0 :(得分:0)
我只需要抛出一个RuntimeException。