@pashaa

Axios отправляет параметры запроса как ключ массива, почему так?

let data = {
                    'email': this.email,
                    'password': this.password
                };
                axios({
                    data: data,
                    method: "post",
                    headers: {
                        'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8'
                    },
                    url: '/api/user/login/'
                }).then(response => {
                    console.log(response.data);
                }).catch(response => {
                    console.log(response);
                });
  • Вопрос задан
  • 869 просмотров
Пригласить эксперта
Ответы на вопрос 2
Ecstazy
@Ecstazy
Golang, vue.js | Fullstack
let data = {
    email: 'example@mail.ru',
    password: '12345',
}

axios.post('https://example.com', {
    params: data,
    headers: {
        'Content-Type': 'application/x-www-form-urlencoded; charset=utf-8',
    }
})
.then( res => {
    //your code
})
.catch( err => {
    //your code
})
Ответ написан
Комментировать
@medin84
software developer
Связано с 'Content-Type': 'application/x-www-form-urlencoded'
https://github.com/axios/axios/issues/362
используй
var data = new URLSearchParams();
data.append('email', email);
data.append('password', password);

или с encodeURIComponent
"email=" + encodeURIComponent(email) + "&password=" + encodeURIComponent(password)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы