天天看點

Django中接收json格式參數實際資料類型為byte

Django中,接收到的參數在request.body中,json格式的參數接收到時為byte類型,需要将byte格式的參數轉換為json才友善後續使用,
           

在Django中,接收到的參數在request.body中,json格式的參數接受到的資料為byte類型,需要将byte格式的參數轉化為json才能友善後續使用,如果直接使用,則會找不到該資料,顯示None。

導入json包,import json,使用json.loads(request.body)即可

Django中的視圖函數:

def login(request):
    if request.method == "POST":
        username = request.POST.get("username")   
        password = request.POST.get("password")   
        print(username,password)   #  這裡列印None None
        print(request.body)
        print(json.loads(request.body))
    return HttpResponse('ok')
           

前端ajax請求函數:

this.$axios.post('http://127.0.0.1:8000/my/login/',{"username":this.username,"password":this.password}).then(function (res) {
           console.log(res);
}).catch(function (res) {
           console.log(res);
       });
           

前端進行請求後的結果: 

Django中接收json格式參數實際資料類型為byte