簡體   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