springboot:如何在HandlerInterceptor的预处理中返回错误状态代码
2022-09-03 04:48:53
我在Spring Boot中用于处理常见类型的请求。但是在执行时,我想在不满足条件时返回错误状态代码给用户。如果我在响应中抛出异常,则将具有所有异常堆栈。如何使用 preHandle 中的响应代码发送自定义正文作为响应HandlerInterceptor
preHandle
preHandle
我在Spring Boot中用于处理常见类型的请求。但是在执行时,我想在不满足条件时返回错误状态代码给用户。如果我在响应中抛出异常,则将具有所有异常堆栈。如何使用 preHandle 中的响应代码发送自定义正文作为响应HandlerInterceptor
preHandle
preHandle
如果不满足条件,您可以使用 来设置响应状态代码并返回以停止执行。要发送自定义正文,可以使用以下方法:response.setStatus(someErrorCode)
false
response.getWriter().write("something");
下面是完整示例。
@Override
public boolean preHandle(HttpServletRequest request,
HttpServletResponse response, Object handler) throws Exception {
if (conditionsNotMet()) {
response.getWriter().write("something");
response.setStatus(someErrorCode);
return false;
}
return true;
}
希望这有帮助。