spring boot 下 500 404 403错误页面处理

来源:互联网 发布:男生留女生发型知乎 编辑:程序博客网 时间:2024/04/29 21:50

转载请注明来源-作者@loongshawn:http://blog.csdn.net/loongshawn/article/details/62432040,建议读者阅读原文,确保获得完整的信息

1.场景说明

Spring Boot 下http 500 404 403错误页面处理。同时文章是在《SpringBoot接口服务处理Whitelabel Error Page》基础上新增内容,更加详细的说明请参考这篇文章。本文直说明差异部分。

2.代码修改

     /**     * Supports the HTML Error View     * @param request     * @return     */    @RequestMapping(value = ERROR_PATH, produces = "text/html")    public ModelAndView errorHtml(HttpServletRequest request) {         Map<String, Object> map = getAttributes(request, false);        ModelAndView mav = null;        Integer status = (Integer) map.get("status");        if (status == 404){            mav = new ModelAndView("pages/404", map);        } else if (status == 403){            mav = new ModelAndView("pages/403", map);        } else if (status == 500){            mav = new ModelAndView("pages/500", map);        } else {            mav = new ModelAndView("greeting", map);        }        return mav;    }    private Map<String, Object> getAttributes(HttpServletRequest request,                                                   boolean includeStackTrace) {             RequestAttributes requestAttributes = new ServletRequestAttributes(request);               Map<String, Object> map = this.errorAttributes.getErrorAttributes(requestAttributes,includeStackTrace);          String URL = request.getRequestURL().toString();        map.put("URL", URL);                logger.debug("AppErrorController.method [error info]: status-" + map.get("status") +", request url-" + URL);                    return map;    }

在templates中添加pages文件夹,创建403、404、500页面。

这里写图片描述

因为如果不处理,会提示异常信息:

这里写图片描述

3.修改效果

404错误跳转至pages/404页面。

这里写图片描述

由于掌握有限,针对文中未尽事宜,麻烦各位帮忙指出,谢谢。

4.Http状态码

这里写图片描述

这里写图片描述

这里写图片描述

更加全面的状态码说明,请参考链接:
http://tool.oschina.net/commons?type=5

0 0
原创粉丝点击