前言
最近项目组升级了SpringBoot
版本,由之前的2.0.4
升级到最新版本2.7.5
,却引出了一个大Bug。
到底是怎么回事呢?
1.案发现场
有一天,项目组的同事反馈给我说,我之前有个接口在新的测试环境报错了,具体异常是:Missing argment level for method parameter of type Integer
。
我当时的第一反应有点懵,心想这个接口是一个老接口
,有一年多的时间都没改过了,怎么会出问题呢?
他说近期另外一个同事为了部署阿里云服务器
,把新测试环境SpringBoot
的版本升级到了最新版
。
之后,在测试的过程中,发现我有个Get
请求接口报异常了。
该接口代码类似于这样:
在getCategory接口中,有两个参数:
- type表示大类,是必传的。
- level表示要返回几级分类,比如:4级分类,就传4,是非必传的,默认就是查4级分类。
就是这样一个接口的level参数,前端没有传参,例如: