设置axios超时值无效果,静态代码分析提示丢弃===操作结果,求答疑
Axios超时设置问题及静态代码分析警告解析
代码场景
你尝试设置Axios默认超时时间的代码如下:
axios.defaults.timeout === 3000; ...... try { const aData = await axios.get(Url, { headers: { 'Authorization': authToken.authHeaderValue, }, httpAgent: new https.Agent({ keepAlive: true }), }); ....
静态代码分析警告
使用Polaris Synopsis检测时,得到如下提示:
Discarding the result of operator "===" in "axios.defaults.timeout === 3000". What was this code intended to accomplish?
问题解答
不是变量设置被丢弃,而是你根本没完成赋值操作:
- 你写的
axios.defaults.timeout === 3000;是比较运算符,作用是判断当前timeout的值是否等于3000,这个比较的布尔结果(true/false)没有被任何代码使用,所以工具提示你“丢弃了操作结果”。 - 要设置超时时间,必须用赋值运算符
=,正确写法是:axios.defaults.timeout = 3000; - 当前你的代码里,Axios的默认超时时间完全没被修改,那行代码只是做了一次无意义的比较,没有任何实际赋值效果。
内容的提问来源于stack exchange,提问作者reach jaango
相关产品推荐
相关产品推荐

