javascript - 我想通过 POST 请求发送一个大的 json 对象
问题描述
我正在使用 fetch api 向基于 NodeJS/Express/MongoDB 的 API 发送发布请求,但不知何故,只有一些字段被发布到 MongoDB 集合。其余省略。当我使用 console.log 在控制台中打印整个 js 对象时,我得到一个带有 ... 最后的部分对象,当悬停在上面时,显示“刚刚评估了下面的值”。看起来请求正在以块的形式发送对象。我想发送整个对象。如何发送整个对象?
前端:
document.getElementById('contact-submit').onclick = async (e) => {
e.preventDefault();
console.log(postData('http://localhost:4001/people',{
"name":document.getElementById('name').value.toString(),
"age": document.getElementById('age').value ,
"sex":document.getElementById('sex').value,
"address":document.getElementById('address').value,
"class": document.getElementById('class').value,
"degree": Number(document.getElementById('degree').value),
"grade":document.getElementById('grade').value,
"notes":Date(document.getElementById('notes').value),
"resume":Number(document.getElementById('resume').value),
"skills":criteria,
"rounds":rounds,
}));
}
async function postData(url = '', data ={}){
console.log(data);
const response = await fetch(url, {
method: 'POST',
mode: 'cors',
cache: 'no-cache',
credentials: 'same-origin',
headers:{
'Content-Type': 'application/json',
},
redirect: 'follow',
referrerPolicy: 'no-referrer',
body: JSON.stringify(data)
});
return response.json();
}
该对象来自一个表单,并且只有一部分被发布到 api 中。PS。当通过邮递员操作时,API 本身可以正常工作并发布完整的对象。