老师我有个疑问关于错误处理,当用户输入了不存在的路由没有响应。怎么样能处理这种异常?

老师我有个疑问关于错误处理,当用户输入了不存在的路由没有响应。怎么样能处理这种异常?

我看文档spring boot Error Handle文档,文档说Spring Boot provides an /error mapping that handles all errors,是不是我们在AutoPrefixUrlMapping这个类中修改了框架默认的行为。您讲的这种姿势异常处理姿势没有接触过。我是想能不能和tp那样,没有匹配的路由也给个统一相应。spring boot默认浏览器中是whitelabel,postman中是一个json。我想都让他返回一个json!看文档有些懵,不知道从何入手了.......

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

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

1回答
7七月 2020-01-21 14:26:27

这个其实可以处理,但是需要修改Spring的默认错误消息。我晚点研究下,我还没处理过这个,但我觉得应该是没问题。

  • 提问者 大王今天不巡山 #1
    嗯嗯!辛苦老师了。
    2020-01-21 17:46:01
  • 宝迪 #2
    大概看了一下原因,是因为hack PrefixUrl的时候,getPrefix中没有排除掉不是以apiPackagePath开头的包,系统默认的错误页面路由被篡改了,导致默认的404页面无法加载,我的做法是在getPrefix判断包名是否以apiPackagePath开始,如果是则返回null,getMappingForMethod发现getPrefix为null时直接原样返回就可以解决了
    2020-03-09 17:58:54
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

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