VUE 用 axios 发送 POST请求出现的问题

tech2025-07-08  1

VUE发送 axios POST请求出现的问题

报错内容:

raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

其实报这个错是json.loads(request.body)的时候出问题了(但是用postman请求就没有问题,所以排除后端的问题),出现这个问题的场景有很多

网上最多的是数据格式的问题(这个就不细说了,随便都能找到解决方法)我的是前端传输数据出了问题(axios传输到后台的时候出了问题)

问题描述:

因为前端axios发送POST有两种方式

一种是params一种是data

我的问题就是使用了params方式,导致数据拼接在POST链接后面了,取不到;看代码

解决问题前 前端代码:

使用的axios的params方式发送POST请求

解决问题前 后端代码:

两种方式打印获取request的数据都是空的

request.POST.GETrequest.body

因为请求把数据拼接在POST链接后面了

问题解决:

后面阅读axios文档,发现params方式和data方式发送POST请求差距很大的,不信你看

解决问题后 前端代码:

axios发送data数据

解决问题后:后端代码

可以看到前端axios以data方式发送数据后,后端打印request.body后取到数据了,然后再是json.loads取到数据才不会报错,之前是因为body里面数据为none,所以就报错了。

PS:初学全栈,对前端不是很熟悉,如果写的有问题,欢迎批评!!!

最新回复(0)