Итак, это ошибочный запрос:
axios
.put('http://127.0.0.1:5000/lamp/' + this.$route.params.id,
{value: this.value},
{headers: {
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
}
})
Я не знаю, что ожидает ваш сервер, но вы устанавливаете content-type
из application/x-www-form-urlencoded
при отправке данных JSON. Кажется вероятным, что это несоответствие является причиной ваших проблем. Вы сможете увидеть это, если изучите запрос в разделе Сеть инструментов разработчика вашего браузера.
Если вам нужно использовать application/x-www-form-urlencoded
, тогда я предлагаю прочитать документацию axios, поскольку вы не можете просто передать объект данных, подобный этому:
https://github.com/axios/axios#using-applicationx-www-form-urlencoded-format
Короче говоря, вам нужно создать строку тела вручную, хотя есть утилиты, которые делают это менее обременительным.
Если вам действительно нужны данные JSON, просто удалите заголовок content-type
. Аксиос должен установить подходящий content-type
для вас.