Maison > Questions et réponses > le corps du texte
Mon contenu json est comme ceci :
{
"type":"user",
"ifor":[
{
"id":001,
"name:"lison"
},
{
"id":002,
"name":"wei"
}
]
}
En JS, j'utilise la méthode ajax de jquery pour le transmettre, et je l'écris comme ceci :
$.ajax("url",{
type:"post",
data:{
type:"user",
ifor: [
{
id:001,
name:"lison"
},
{
id:002,
name:"wei"
}
]
},
success:function(){}
})
Ma version est python3.6 et Django est 1.11.1. Comment dois-je le recevoir dans vues.py dans Django ? J'ai beaucoup vérifié en ligne, certains ont dit json.loads(request.body), d'autres ont dit simplejson.loads(request.raw_post_data), mais ils semblaient tous avoir des problèmes. Pourriez-vous s'il vous plaît me dire comment les recevoir et les analyser
.女神的闺蜜爱上我2017-06-12 09:25:52
Ajax frontal :
data = {};
$.ajax({
type: "post",
url: "url",
dataType: "json",
data: JSON.stringify(data),
success: function(result) {
}
});
Valeur du backend :
import json
data = json.loads(request.body)
print data['key']
代言2017-06-12 09:25:52
Vous devez d'abord déterminer à quoi ressemble le contenu que vous transmettez au backend. Cela ne peut pas être directement json.loads
Supposons que le code source de la méthode d'affichage correspondante soit le suivant
def test(req):
print(req.POST) # 通过输出看看前端传过来的数据是什么
return HttpResponse('test')
Seul le format json
conforme à '{"aa":"xxx"...}'
peut être reconnu et désérialisé par '{"aa":"xxx"...}'
这样的json
格式才能够被json.loads
识别并反序列化, 如果传回来的结果不是这样的json
格式, 那么就要调整前端的ajax
, 以便能够构造出这样的数据, 具体可以通过dataType: json
或者通过字符串拼接的方法构造都可以, 详情可以自行谷歌: ajax传递json数据
Si le résultat est renvoyé Si cela. n'est pas le format json
, alors le ajax
frontal doit être ajusté pour pouvoir construire de telles données. Plus précisément, vous pouvez transmettre dataType: json ou Il peut être construit via l'épissage de chaînes. Pour plus de détails, vous pouvez le rechercher vous-même :
ajax transmet les données json