若依框架下的自定义Exception抛出,返回code,msg不出错(spring boot)。 |
您所在的位置:网站首页 › java怎么手动抛出异常 › 若依框架下的自定义Exception抛出,返回code,msg不出错(spring boot)。 |
若依框架下的自定义Exception抛出,返回code,msg不出错: 最近接的项目后台中,因为需要在app用到自定义的token验证(不用若依的那一套登陆token)来确保接口的安全性,需要在进入接口前使用aop切面的before来验证它的头(headers)是否符合条件。 先上代码: 当token出现不匹配或者数据缺失时,就需要通过抛出Exception来中断该接口直接返回定义好的code跟msg。 这时候就需要用到自定义的Exception。 Exception代码: 这时候如果直接启动若依框架,用postman调用接口可以看见出现不是自己定义的code情况。 且出现idea,Exception抛出报错的提示。 很多人用过的人都熟悉,code500是若依接口空值等很多访问接口的返回信息,那么你就能知道其实你写的自定义Exception被若依”截获“了并改成符合它自己条件的code值,msg不变是因为若依的接口返回规范中的getMessage不做约束。 这时候你就需要去想一下若依自己的抛出为什么不会报错?通过shift+ctrl+f找若依的相同返回值,例如401。
最后找到了若依统一处理异常的类以及其中“规范”自定义异常的方法: 这时候你只需要复制一份,随便改个名称,就可以做到跟它一样不报错且返回你想要的自定义code信息的返回数据(注:你的自定义Exception得放在ruoyi-common中,不然处理不到):
此上就是我在写ruoyi中的自定义Exception所踩的坑,希望能帮助到你们,谢谢观看。 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |