我们写代码过程中,异常是较为常见的,如果用户直接看到我们未处理好的异常的,那么用户体验是非常不好的,所以,我们需要了解一下如何来处理程序中的异常。
这里我新建了一个名为ExceptionController的控制器,加入几行简单的代码
这时候来我们Debug模式看看程序是什么现象,通过Swagger或者是浏览器直接访问,就可以看到上面这些错误提示,并且在控制台也会记录相关错误信息
如果我们正式部署之后,服务端默认只会返回StatusCode为,其他信息则只能在后端控制台或者日志中才能看到。
这种方式显然是不友好的,所以,我们需要多异常进行处理
异常处理程序
当程序发生异常时,我们可以借助UseExceptionHandler中间件来路由到相应的错误。这里,我们分别对开发环境和非开发环境创建一个路由,如:
然后在Program.cs中使用UseExceptionHandler中间件
这时候,我们再来访问一次,
这是开发模式
这是非开发模式
这样的相应格式,确实要比之前的要稍微直观一点,但是对于前端展示,还是一脸懵逼。
使用异常来修改响应
前面的方式,依然不够友好,