gpt4 book ai didi

node.js - Postman 可以工作,但 Fetch 不能。我究竟做错了什么?

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

我正在研究 Express、Node 和 Mongoose 的 ScotchIO 教程 - 但我似乎无法通过 req.body

如果我在 Postman 中发出请求,它工作正常 - 我可以在 Mlab 上看到记录更新:-

postman body

postman headers

但是如果我在 chrome 中发出 fetch() POST 请求(在那里进行测试直到我可以让它工作,然后我将转向 React Native 应用程序),我会得到一系列 ValidationError:用户验证失败(用户是我的架构,然后它会变得更具体,例如ValidatorError:PathuserName是必需的。等)。

fetch('http://localhost:3001/api/users', {
method: 'POST',
headers: {
"Content-Type": "application/x-www-form-urlencoded",
},
body: {
userName: 'IngleburtHumperdink',
email: "Ingle@Humber.com",
password: "mypw_blah"
}
})

我的架构:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;

const UserSchema = new Schema({
userName: {
type: String,
required: true,
},
email: {
type: String,
required: true,
},
password: {
type: String,
required: true,
}
});

module.exports = mongoose.model('User', UserSchema);

更新:server.js

server.js

最佳答案

结果我错过了 body: JSON.stringify({ userName:'myUserName' })

所以你是对的@AlexBlex,我正在发送 JSON,只需要 json.stringify() 来转换它。

已测试并修复。非常感谢两位!

关于node.js - Postman 可以工作,但 Fetch 不能。我究竟做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51481242/

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