Kitty Cloud(HTTP_RPC)的全局异常处理
项目地址 https://github.com/yinjihuan/kitty-cloud 异常处理不用我讲,大家都清楚。单独的异常处理太繁琐,全局异常处理可以在一个应用中统一进行异常的处理,非常方便。目前全局异常处理用的也越来越广泛,今天跟大家来聊一聊 Kitty Cloud 中的全局异常是如何处理的? 为什么要使用全局异常处理呢? 使用全局异常处理后,我们不需要定义固定类型的返回值,当业务代码报错的时候直接通过异常处理方式来返回给前端或者 API 调用方错误信息。 不使用全局异常处理案例 Web 层 比如我们定义了一个 ResponseData 用来返回固定格式的数据,正常情况下不会有问题,给前端返回的格式也是固定的,如下: { "code":200, "data":{ "name":"yinjihuan" }, "message":"success", } 如果业务发生异常,那么这个接口就不会返回上面那样固定格式的数据了,会给我们返回错误页面。除了代码异常还有一种情况就是当访问的 Uri 错误的时候,也会给调用方返回 404 的错误页面,如下: 如果是传统的 Web 项目,里面包含了页面这是没问题的,我们也可以自定义错误页面让用户体验更好一点。但是在这个基本上是前后端分离的开发模式下,后端只提供的数据的 API,不会有页面的内容。所以就算出错了,就算使用者调用的 API