[英]getting error as events.js:292 throw er; // Unhandled 'error' event
frontend code前端代码
axios.post("/register",{
username,
email,
contactNumber,
password,
confirmPassword
})
.then(async (res)=>{
// if(response.message)
// {
// await alert(res.message);
// }
console.log(res);
})
.catch((err)=>{
alert(err);
})
};
backend code后端代码
exports.userSignup=async(req,res)=>{
try{
await users.findOne({username:req.body.username})
.exec((error,user)=>{
if(user) res.status(404).json({message:"username already exists"});
if(error) res.status(400).json({message:`something wrong! Error: ${error}`});
})
await users.findOne({email:req.body.email})
.exec((error,user)=>{
if(user) res.status(402).json({message:"Email is already registered with user"});
if(error) res.status(403).json({message:`something wrong! Error: ${error}`});
})
if(req.body.password!=req.body.confirmPassword)
{
res.status(405).json({message:"Passwords are not matching"})
}
const _user=new users({
username:req.body.username,
email:req.body.email,
contactNumber:req.body.contactNumber,
password:req.body.password
})
await _user.save((error,data)=>{
if(error) res.status(404).json({ message:`Error ${error}`});
if(data)
{
res.render('login');
}
})
}catch(error){
res.status(406).json({'message':error});
}
};
error错误
events.js:292
throw er; // Unhandled 'error' event
^
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at ServerResponse.setHeader (_http_outgoing.js:558:11)
at ServerResponse.header (C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\express\lib\response.js:771:10)
at ServerResponse.send (C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\express\lib\response.js:170:12)
at ServerResponse.json (C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\express\lib\response.js:267:15)
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\controllers\register.js:18:39
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\model.js:4857:16
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\helpers\promiseOrCallback.js:24:16
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\model.js:4880:21
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\query.js:4397:11
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\kareem\index.js:136:16
at processTicksAndRejections (internal/process/task_queues.js:75:11)
Emitted 'error' event on Function instance at:
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\model.js:4859:13
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\helpers\promiseOrCallback.js:24:16
[... lines matching original stack trace ...]
at processTicksAndRejections (internal/process/task_queues.js:75:11) {
code: 'ERR_HTTP_HEADERS_SENT'
}
please help请帮忙
frontend code前端代码
axios.post("/register",{
username,
email,
contactNumber,
password,
confirmPassword
})
.then(async (res)=>{
// if(response.message)
// {
// await alert(res.message);
// }
console.log(res);
})
.catch((err)=>{
alert(err);
})
};
backend code后端代码
exports.userSignup=async(req,res)=>{
try{
await users.findOne({username:req.body.username})
.exec((error,user)=>{
if(user) res.status(404).json({message:"username already exists"});
if(error) res.status(400).json({message:`something wrong! Error: ${error}`});
})
await users.findOne({email:req.body.email})
.exec((error,user)=>{
if(user) res.status(402).json({message:"Email is already registered with user"});
if(error) res.status(403).json({message:`something wrong! Error: ${error}`});
})
if(req.body.password!=req.body.confirmPassword)
{
res.status(405).json({message:"Passwords are not matching"})
}
const _user=new users({
username:req.body.username,
email:req.body.email,
contactNumber:req.body.contactNumber,
password:req.body.password
})
await _user.save((error,data)=>{
if(error) res.status(404).json({ message:`Error ${error}`});
if(data)
{
res.render('login');
}
})
}catch(error){
res.status(406).json({'message':error});
}
};
error错误
events.js:292
throw er; // Unhandled 'error' event
^
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client
at ServerResponse.setHeader (_http_outgoing.js:558:11)
at ServerResponse.header (C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\express\lib\response.js:771:10)
at ServerResponse.send (C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\express\lib\response.js:170:12)
at ServerResponse.json (C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\express\lib\response.js:267:15)
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\controllers\register.js:18:39
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\model.js:4857:16
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\helpers\promiseOrCallback.js:24:16
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\model.js:4880:21
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\query.js:4397:11
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\kareem\index.js:136:16
at processTicksAndRejections (internal/process/task_queues.js:75:11)
Emitted 'error' event on Function instance at:
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\model.js:4859:13
at C:\Users\ajayb\OneDrive\Desktop\savli - Copy\node_modules\mongoose\lib\helpers\promiseOrCallback.js:24:16
[... lines matching original stack trace ...]
at processTicksAndRejections (internal/process/task_queues.js:75:11) {
code: 'ERR_HTTP_HEADERS_SENT'
}
please help请帮忙
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.