BladeErrorController该类的意义是什么

Blade 未结 1 431
837750969@qq.co
837750969@qq.co 2022-11-18 18:46

一、该问题的重现步骤是什么?

1. blade-starter-log 中类

BladeErrorController
ModelAndView (HttpServletRequest requestHttpServletResponse response) {
   includeStackTrace = isIncludeStackTrace(requestMediaType.)Map body = getErrorAttributes(request(includeStackTrace) ? ErrorAttributeOptions.(ErrorAttributeOptions.Include.) : ErrorAttributeOptions.())HttpStatus status = getStatus(request)response.setStatus(status.value())MappingJackson2JsonView view = MappingJackson2JsonView()view.setObjectMapper(JsonUtil.())view.setContentType(MediaType.)ModelAndView(viewbody)}

body类型为

public abstract class BladeBeanMap extends BeanMap

BeanMap不支持remove方法

image.png

当执行remove时100%抛出异常

image.png


这样设计的目的是什么?

重写该类

BladeErrorController

一般是为了给error固定错误页面,我们框架这个设计看不懂,且直接抛出了异常,难道设计这个类就是为了抛出异常?就算是抛出异常也不应该在remove这里抛出异常吧。

1条回答
  •  admin
    admin (楼主)
    2022-11-19 00:29

    其实注释已经说明了,如果请求是html格式,调用异常,会改成json格式返回

    image.png

    作者追问:2022-11-19 00:29

    image.png

    请求不存在的地址,Accetp为text/html,结果也没返回json呀?返回了空结果

    0 讨论(0)
提交回复