如何将ajaxjson post请求从Jquery转换为Python/Django字典

2024-09-29 17:18:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将从JS检索JSON的AJAX请求转换为Django中的Python字典,但没有成功。请帮忙。在

这是原始的JS代码:

myJSON = JSON.stringify(myJsObject);

// POST - send JSON data to Python/Django server
$.ajax({
  url: "/savemyexposuresituation",
  type: "POST",
  datatype: 'json',
  data: myJSON,
  async: false,
  success: function() {
    alert('Your data is saved :)');
  },
  error: function() {
    alert('Error occured :(');
  }
});
}

这是Django方面:

^{pr2}$

我只得到JSON object must be string, not QueryDict。我试着把这个问题转换成其他东西,但没有成功。在


Tags: todjango代码sendjsondata字典js
3条回答

request.POST用于表单编码数据。您应该使用request.body。在

在Python3中,要将字节转换为字符串,需要使用decode("utf-8")。可能是这样的request.POST.decode("utf-8")

多亏了回应,完整的答案将是:

def saveExposureSituation(request):

    fromJs = request.body
    fromJs = fromJs.encode('utf-8')

    #now we can load our JSON from JS
    fromJs = json.loads(fromJs)

相关问题 更多 >

    热门问题