vue axios 网络状态status=401的时候,接收服务器返回的数据

问题描述: 后端使用restfull接口规范,这样就会有400,401,404等这样得状态码返回给前端,导致前端无法获取到服务器的数据了。
原因: axios 默认抛弃了 网络状态不在 [200, 300) 区间的服务器返回
解决: 修改axios的库文件,增加允许返回的判断

方案如下
库文件所在位置:node_modules/axios/lib/core/settle.js
在这里插入图片描述
第16行 原代码注释:

if (!response.status || !validateStatus ||validateStatus(response.status)){

增加如下代码

if (!response.status || !validateStatus || (validateStatus(response.status) || response.status === 401)){
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐