为什么在Need_Login那块不用抛出异常的方式?

为什么在Need_Login那块不用抛出异常的方式?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小尤 2022-10-30 18:29:59

同学你好,过滤器中抛出的异常无法通过全局异常进行捕获的,因过滤器会先运行,当发送一个请求时,会在过滤器中进行处理,如果通过了才会向下执行,所以当在过滤器中抛出异常时,并未执行到统一处理异常的类中。从而在过滤器中使用的是输出字符流。

祝学习愉快!

  • 提问者 迎风向上乀 #1

    可是为什么JWT那块也是在过滤器中 但是就用自定义的异常去抛出呢?

    2022-10-31 10:30:17
  • 好帮手慕小尤 回复 提问者 迎风向上乀 #2

    同学你好,1、统一异常处理(API统一返回对象)设置固定的参数,如下所示:

    https://img1.sycdn.imooc.com//climg/635f464109d442f303770163.jpg

    2、在Need_Login中也是可以抛出异常的,只不过并不会按照统一的格式(统一异常处理)进行返回。所以使用了输出字符流,将返回格式进行统一。

    3、JWT处抛出异常也是没有经过统一异常处理,只不过是将异常信息抛出来了。如下所示:此处使用那种方式都是可以的。

    https://img1.sycdn.imooc.com//climg/635f45df090fdb4b07020262.jpg

    祝学习愉快!

    2022-10-31 11:56:08
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师