从 Django 中的 post 请求中获取数据非表单数据
Get data non form data from post request in django
我尝试提交更改数据并根据 POST 请求的数据更改视图的响应。
$.ajax({
url: $basicAnalysisChart.data("url"),
type: "POST",
headers:{
"X-CSRFToken": csrftoken
},
dataType: "json",
contentType: 'application/json; charset=utf-8',
data:{
selector1:$("#Select1").val(),
selector2:$("#Select2").val()
},
我尝试使用 request.POST.get("Select1", "")
和 request.POST.get("selector1", "")
获取我认为的数据,但无法正常工作。
因为你的数据类型是JSON,在django中你应该说
data = request.body
而不是:
request.POST.get("Select1", "")
来自文档:“如果您需要访问请求中发布的原始数据或非表单数据,请改为通过 HttpRequest.body 属性进行访问。”
这里是 link 文档:https://docs.djangoproject.com/en/3.2/ref/request-response/#django.http.HttpRequest.POST
我没有正确格式化 json 对象,所以它无法工作。问题已解决
我尝试提交更改数据并根据 POST 请求的数据更改视图的响应。
$.ajax({
url: $basicAnalysisChart.data("url"),
type: "POST",
headers:{
"X-CSRFToken": csrftoken
},
dataType: "json",
contentType: 'application/json; charset=utf-8',
data:{
selector1:$("#Select1").val(),
selector2:$("#Select2").val()
},
我尝试使用 request.POST.get("Select1", "")
和 request.POST.get("selector1", "")
获取我认为的数据,但无法正常工作。
因为你的数据类型是JSON,在django中你应该说
data = request.body
而不是:
request.POST.get("Select1", "")
来自文档:“如果您需要访问请求中发布的原始数据或非表单数据,请改为通过 HttpRequest.body 属性进行访问。”
这里是 link 文档:https://docs.djangoproject.com/en/3.2/ref/request-response/#django.http.HttpRequest.POST
我没有正确格式化 json 对象,所以它无法工作。问题已解决