POST请求查询参数神奇失效的一次神奇bug之旅

出现场景:

某日我看着GET请求的参数逐渐变多,想个改成POST请求得了,这样body传参美观又方便,于是接口从GET变成了POST,然后查询参数就莫名其妙的就全部失效了,接口也没有报错,就参数失效了,查询了全部数据。

发现问题过程:

自己捣鼓了半天没发现异常,然后删除了一些前端查询参数,结果查询条件突然生效了,那导致查询生效的参数就一定是在自己刚刚删除的参数里面,通过对比发现后端定义的时间类型是Date的参数被前端传了个数组类型,主要它不报错呀,直接使全部查询参数失效了,debug看传进去的body对应是实体里面只有Integer类型的值还在,其他全为null了,真想骂人啊,要是其他类型传错了参数格式,它是会报错了,可是上述的场景就是不会。

教训:

尽量别使用Date来接收参数,容易踩坑,当出现其他查询参数失效的时候,检查下是不是Date对应的传参被传了个数组进来。

相关推荐
hello_2504 天前
bug排查思路大纲
bug
秃头小饼干4 天前
关于Bug排查日记的技术文章大纲
bug
烧冻鸡翅QAQ4 天前
测试中的Bug
bug·测试
云和数据.ChenGuang5 天前
java常见SSL bug解决方案
java·bug·ssl
cat_with_cat6 天前
测试:BUG篇
bug·测试
黑客飓风6 天前
Bug排查日记的技术
bug
Wiktok6 天前
[Wit]CnOCR模型训练全流程简化记录(包括排除BUG)
python·深度学习·bug
玄尺_0076 天前
bug:uniCloud报Business Failed, 参数有误retry invoke error
数据库·bug
程序猿阿伟6 天前
《云原生边缘与AI训练场景:2类高频隐蔽Bug的深度排查与架构修复》
人工智能·云原生·bug
夕阳UPdz6 天前
深入探索 Unity 错误排查过程:从“滚动条问题”到“鼠标悬浮异常”
bug