如何解决发布请求高级 REST 客户端不起作用 -> 找不到错误 404MERN 堆栈
我是编程新手,最近才开始使用 MERN 堆栈构建模因生成器。现在我尝试为“用户”模型实现注册功能。使用 Advanced REST 客户端测试 Post 请求时,我收到错误“404 not found”。
我的 Post 请求如下所示:
Method: POST
Request URL: http://localhost:3001/api/account/signup
{
"email": "test@test.com","password": "test","firstName": "Isa","lastName": "Testname"
}
我的签名.js 路由代码:
const User = require('../dbmodels/User');
module.exports = (app) => {
//Signup process
app.post('/api/account/signup',(req,res,next) => {
const { body } = req;
const {
firstName,lastName,password
} = body;
let {
email
} = body;
if (!firstName) {
return res.send({
success: false,message: 'Error: First name cannot be blank.'
});
}
if (!lastName) {
return res.send({
success: false,message: 'Error: Last name cannot be blank.'
});
}
if (!email) {
return res.send({
success: false,message: 'Error: Email cannot be blank.'
});
}
if (!password) {
return res.send({
success: false,message: 'Error: Password cannot be blank.'
});
}
console.log('here');
email = email.toLowerCase();
// Verify email doesn't exist and save
User.find({
email: email
},(err,previousUsers) => {
if (err) {
return res.send({
success: false,message: 'Error: Server error'
});
} else if (previousUsers.length > 0) {
return res.send({
success: false,message: 'Error: Accound already exists.'
});
}
// Save the new user
const newUser = new User();
newUser.email = email;
newUser.firstName = firstname;
newUser.lastName = lastName;
newUser.password = newUser.generateHash(password);
newUser.save((err,user) => {
if (err) {
return res.send({
success: false,message: 'Error: Server error'
});
}
return res.send({
success: true,message: 'Signed up'
});
});
});
});
};
我的“User.js”数据库模型代码:
const mongoose = require("mongoose");
const bcrypt = require("bcrypt");
// User Schema
const UserSchema = new mongoose.Schema({
firstName: {
type: String,default: ''
},lastName: {
type: String,default: ''
},lastName: {
type: String,email: {
type: String,password: {
type: String,isDeleted: {
type: Boolean,default: false
}
});
//Generate Hash
UserSchema.methods.generateHash = function(password) {
return bcrypt.hashSync(password,bcrypt.genSaltSync(8),null);
};
//Generate validation of password
UserSchema.methods.validPassword = function(password) {
return bcrypt.compareSync(password,this.password);
};
//Create Model in MongoDB
module.exports = mongoose.model("User",UserSchema);
我的文件结构: [1]:https://i.stack.imgur.com/Bgssg.png
非常感谢您的帮助! 伊莎贝尔
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。