ในฐานะที่เป็นส่วนเสริมสำหรับผู้ที่อาจพบปัญหาเดียวกันกับของฉันฉันใช้$.ajax
เพื่อโพสต์ข้อมูลแบบฟอร์มไปยังเซิร์ฟเวอร์และฉันยังได้รับ400
ข้อผิดพลาดในตอนแรก
สมมติว่าฉันมีตัวแปรจาวาสคริปต์
var formData = {
"name":"Gearon",
"hobby":"Be different"
};
อย่าใช้ตัวแปรformData
โดยตรงเป็นค่าของคีย์data
ดังนี้:
$.ajax({
type: "post",
dataType: "json",
url: "http://localhost/user/add",
contentType: "application/json",
data: formData,
success: function(data, textStatus){
alert("Data: " + data + "\nStatus: " + status);
}
});
ใช้ JSON.stringify แทนเพื่อแค็ปซูลformData
ดังนี้:
$.ajax({
type: "post",
dataType: "json",
url: "http://localhost/user/add",
contentType: "application/json",
data: JSON.stringify(formData),
success: function(data, textStatus){
alert("Data: " + data + "\nStatus: " + status);
}
});
อย่างไรก็ตามในขณะที่คนอื่น ๆ ได้แสดงให้เห็นข้อผิดพลาดเป็นเพราะเซิร์ฟเวอร์ไม่สามารถรับรู้คำขอทำให้เกิดไวยากรณ์ผิดรูปแบบฉันแค่ยกตัวอย่างที่ปฏิบัติ หวังว่ามันจะเป็นประโยชน์กับใครบางคน
Roman
พวกเขาเพียงต้องการที่จะจ่ายเงินให้คุณมากขึ้น :)