axios.interceptors中的死循环

    async getSessionID() {
        let params = { user_type: 3 }
        return http('get', '/api/webConnect', params);
    },
axios.interceptors.request.use(
   async config => {

        let sessionID = localStorage.getItem("sessionID")

        if (!sessionID) {
            // api.getSessionID().then(async(res) => {
            //     console.log(res)
            //     localStorage.setItem("sessionID", res.data.sessionid)
            //     config.params.sessionid = res.data.sessionid
            // })

            let resp = await api.getSessionID()
            sessionID = resp.data.sessionid;
            localStorage.setItem('sessionID',sessionID)
        }
        config.params.sessionid = sessionID

        if (config.method === 'post') {
            config.data = Qs.stringify(config.data);
        }
        // store.commit("isloading", { "isloading": true })
        return config;
    },
    err => {
        return Promise.reject(err);
    }
);

发送请求之前,判断有无token,如果没有就去请求token,把token作为参数发送到后端;现在这一步死循环,网页崩溃啦

拉莫斯之舞
浏览 671回答 1
1回答

宝慕林4294392

axios.interceptors.request.use( config config前面加上async
打开App,查看更多内容
随时随地看视频慕课网APP