Axios拦截器在React JS中不工作

yjghlzjz  于 2022-12-12  发布在  iOS
关注(0)|答案(1)|浏览(196)

我使用下面的代码作为我的React JS应用程序中的拦截器,用于取回令牌,但不幸的是,它不工作。刷新令牌返回新的idToken并正确更新本地存储数据。我正在使用其他一些工作正常的应用程序的相同代码。一个主要区别是我目前使用的是React 18和以前的16。我努力找出问题,但失败了。你的帮助将是值得感谢的。
第一个
因此,我这样调用API:

AxiosServices.post(ApiUrlServices.SOCIALS_UPDATE_LINKS(UserInfo.userId), payload, false)
        .then(response => {})

我发现return axios(error.response.config);并没有在API请求头中发送授权令牌,而是无限地尝试请求。但是控制台error.response.config在配置中正确地显示了令牌集。

qjp7pelc

qjp7pelc1#

添加了一个额外的修改axios请求,我解决了我的问题。

axios.interceptors.request.use(request => {
    // Edit request config
    let usersData = JSON.parse(localStorage.getItem('userData'));
    request.headers['Authorization'] = `${usersData.idToken}`;
    return request;
}, error => {
    return Promise.reject(error);
});

相关问题