Как переслать запрос, который не прошел по ошибке «csrf token distmacth», после его восстановления - PullRequest
0 голосов
/ 10 июля 2020
• 1000 я вызываю метод в laravel, который возвращает новый токен, и обновляю его следующим образом
async refreshToken(state, parametro) {

        if (state.refrescando == 3) return null;
        if (parametro.data.message != "CSRF token mismatch.") return null;

        try {

            const response = await axios.get('/admin/home/refreshToken');
            window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
            window.axios.defaults.headers.common['X-CSRF-TOKEN'] = response.data;
            console.log('refreshToken', response)
            this.commit('originalRequest', parametro)
            state.refrescando = state.refrescando + 1
            
        } catch(error) {
            console.log('el error es', error)
            // me.commit("notifyInfo", "Error de autenticacion (419).. La pagina se recargará automaticamente");
            // setTimeout( function() {
            //     // location.assign('/admin/home');
            // }, 5000);
        }
    },

, пока все работает очень хорошо .. проблема в том, что я не хочу пользователь, чтобы снова нажать кнопку, чтобы переслать запрос ... затем estroy пытается повторно отправить запрос ниже

originalRequest(state, data) {
    axios.request(data.originalRequest).then(response => {
        console.log('originalRequest Response', response)
    }).catch(error => {
        console.log('volvio a reventar', error)
    });
},

Вот где проблема, по какой-то причине это вызывает ошибку 419 "csrf token distmacth ", хотя я уже обновил свой ax ios, и он вводит бесконечный l oop .. есть идеи, почему это происходит?

...