gpt4 book ai didi

javascript - req.body 中的 JSON 数据数组

转载 作者:太空宇宙 更新时间:2023-11-04 03:00:12 24 4
gpt4 key购买 nike

所以我试图将 json 数据传递到我的 req.body

数据如下所示:

answers = ["A","B"]; //This is an array that will be added to the JSON Object

var Student_Answers = { //This is the JSON object
Answers: answers,
matricNumber: matric
};

这是发布请求:

$.ajax({
type: "POST",
url: `/exam/${matric2}`,
dataType: "json",
data: Student_Answers,
success: function(data) {
console.log("data received: ", data);
}
});

因此,数据已成功传递到 req.body,但我的问题是数据在 req.body 输出中的样子,当我记录 req.body 时,它看起来像这样:

 {
'Answers[]': [ 'A', 'B' ],
matricNumber: '88/2386'
}

但是我期待什么

 {
Answers: [ 'A', 'B' ],
matricNumber: '88/2386'
}

有人可以向我解释一下为什么在 req.body 中以这种方式查看答案数组吗 ('Answers[]': [ 'A', 'B' ])。它搞乱了我将数据保存到 mongodb 的过程。

最佳答案

dataType 告诉 jQuery 您期望在响应中返回哪种数据。要告诉 jQuery 您在请求中发送什么类型的数据,请设置 contentType 。 (是的,令人困惑的是,data 是要发送的数据,但 dataType 是您期望的响应类型。API 失败。😊)您还需要自己对其进行字符串化,jQuery 不会为您执行此操作:

$.ajax({
type: "POST",
url: `/exam/${matric2}`,
contentType: "application/json", // <===========
data: JSON.stringify(Student_Answers), // <===========
success: function(data) {
console.log("data received: ", data);
}
});

关于javascript - req.body 中的 JSON 数据数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59466755/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com