萌新想尝试一次VUE-CLI + Django的个人网站开发,昨天遇到了一次axios串POST参数 ,django request.POST.get不到数据 一直是None,但是Postman可以成功提交。
根据网上的说法,后端改成了Json转字典的方式获取数据,请问一下能不能不采用这种方式,还有其他解决方法吗?
def register_account(request):
# email = str(request.POST.get('email'))
# username = request.POST.get('username')
# password = request.POST.get('password')
json_str = json.loads(request.body)
email = json_str.get('email')
username = json_str.get('username')
password = json_str.get('password')
axios的代码呢?axios通过data post发送对象时,content-type是application/json,不是键值对的application/x-www-form-urlencoded,通过键值对的方法获取不到,
使用 application/x-www-form-urlencoded format
默认情况下,axios将JavaScript对象序列化为JSON。 要以application / x-www-form-urlencoded格式发送数据,您可以使用以下选项之一。
浏览器
在浏览器中,您可以使用URLSearchParams API,如下所示:
const params = new URLSearchParams();
params.append('param1', 'value1');
params.append('param2', 'value2');
axios.post('/foo', params);