排查:axios请求拦截器axios.interceptors.request.use里undefined报错

1. 起因

一开始没有用上token验证,代码跑的好好的。
然后利用axios的请求拦截器加上token后,在最新的或者说较新的chrome里,都没问题,但是比较老旧的比如chrome59版本的浏览器就直接catch到报错,但是报错内容是空的!!!undefined报错!!
期间用时至少6小时才排查出来,简直了。
下面这段代码看起来有问题吗?
在这里插入图片描述

2. 可能问题

2.1 老版本浏览器不支持promise?

一度差点以为这就是答案,因为用手动加token的axios来访问就是ok的。但只要用上拦截器就是catch到undefined报错,不理解
加插件,让不支持promise的也支持,也是报错
只能一行代码一行代码的试
最后发现,其实promise是支持的,那就奇怪了

2.2 老版本浏览器不支持replaceAll?

YES!!!!
请看下图,假如在框里用了replaceAll,
在这里插入图片描述
在这里插入图片描述
replaceAll要2020年后的chrome浏览器才支持!
至此,问题发现了,那就好解决了,一开始那个undefined,真的不知道哪里出的问题了。

3. 总结

用时6小时+,有时候不合预期的代码表现,肯定是有问题的,但就是报错没报出来,这时候真的就只能保持住耐心一点一点试了,等定位到了,就哦原来是这样的,但中间真的就浪费太多时间精力了。
写个文章吐槽一下~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值