전단 에서 백 엔 드 로 json 데 이 터 를 전달 합 니 다.
문제 발견
$("#error_data").click(function (){
var url = "/show/test_json/";
var data = {
"list": [1,2],
"name": "xxx",
"text": " "
};
$.ajax({
url: url,
data: data,
type: "POST",
contentType : "application/json",
traditional: true,
success: function(data) {
console.log(data);
},
error: function (data) {
console.log(data);
}
});
});
print(request.POST)
print(request.method)
print(request.body)
POST
b'list=1&list=2&name=xxx&text=%E4%B8%AD%E5%9B%BD%E4%BA%BA'
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
문제 해결
$("#send_btn").click(function (){
var url = "/show/test_json/";
var data = {
"list": [1,2],
"name": "xxx",
"text": " "
};
$.ajax({
url: url,
data: JSON.stringify(data),
type: "POST",
contentType : "application/json",
dataType: "text",
traditional: true,
success: function(data) {
console.log(data);
console.log(JSON.parse(data));
},
error: function (data) {
console.log(JSON.parse(data));
}
});
});
POST
b'{"list":[1,2],"name":"xxx","text":"\xe4\xb8\xad\xe5\x9b\xbd\xe4\xba\xba"}'
문제 총화
JSON.stringify()
json 대상 을 json 문자열 로 전환 해 야 합 니 다.request.POST
사용 할 수 없고 request.body
request.body
의 데 이 터 는 bytes 형식 이 므 로 사용 하려 면 먼저 디 코딩 해 야 합 니 다.이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.