繁体   English   中英

springboot:如何在HandlerInterceptor的预处理中返回错误状态代码

[英]springboot : how to return error status code in prehandle of HandlerInterceptor

我在Spring Boot中使用HandlerInterceptor来处理常见类型的请求。 但是在执行preHandle ,如果不满足条件,我想将错误状态代码返回给用户。 如果我在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;
} 

希望这可以帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM