前端代码是这样的
跨域访问什么的都已经通过加上X-CSRFToken解决了。
然后后端的view是这样写的:
@require_http_methods(["POST"])
def auth(request):
word=request.POST.get('username','123')
return HttpResponse(word)
结果得到的response数据是123,也就是说request.POST.get('username','123')这里面读取不到username的值?
请问是为什么啊
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
我最终找到解决方法了,并不是因为前端加了
JSON.stringify的问题。如果不加
JSON.stringify,那么前端传来的request的body就是"username"="test","password"="123"了。而且,即便是换成了这样的CGI格式的请求,后端还是取出不了数据。所以我换成了直接自己去解析
request.body(这里有个小坑,就是需要先decode()一下),然后就能正常拿到请求的json了。代码如下:
不过还是感谢各位的帮助!
function login() {
ajax应该直接在data写上要发送的数据,而不是 JSON.stringify,这个把你要发送的数据格式化成字符串了。。