Извлечение токена из URL-адреса и отправка post-запроса с помощью Axios - Vue js


Извлечение токена из URL-адреса и отправка post-запроса с помощью Axios - Vue js

19.09.2020 12:30:47 Просмотров 43 Источник

Я пытался извлечь токен, скажем, из http://test.com/confirm?token=MMsndiwhjidh..., а затем отправить post-запрос на другой сервер.

Я уже пробовал это:

export default {
    data() {
        return {
            confirmation : false,
            somethingWrong: false       
        }
    },
    
    created: function() {
        axios.post('/confirm', null, {
            method: 'post',
            params: {
                token:this.$route.query.token
            }
        })
        .then(function(res) {
            console.log(res)
            this.confirmation = true       
        })
        .catch(function(error) {
            console.log(error)
            this.somethingWrong = true
        })
    }
}

Я получил следующие ошибки:

Error log

Error log

Я думаю, что не в состоянии извлечь токен должным образом.

У вопроса есть решение - Посмотреть?

Ответы - Извлечение токена из URL-адреса и отправка post-запроса с помощью Axios - Vue js / Extracting token from the URL and sending a post request using Axios - Vue js

Является ответом!
Kapcash

19.09.2020 01:56:55

Причина в том, что вы используете декларативные функции вместо функций со стрелками в своих блоках then / catch. this не относится к одному и тому же (здесь this-это не ваш компонент Vue).

Попробуй вот так:

.then((res) => {
    console.log(res)
    this.confirmation = true       
})

Я не буду пытаться объяснить разницу сам, так как в интернете есть много статей об этом. Вот один

Помочь в развитии проекта:
Закрыть X