After a post request , an error is thrown
Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client at ServerResponse.setHeader
FInd the code below :
router.post('/share', (req, res) => {
const {userArray} = req.body
userArray.map(userArray =>
Share.findOne({ username: userArray.username }, (err, user) => {
if (err) {
console.log('share in router user.js post error: ', err)
}
else if (user) {
Share.update({ username: userArray.username}, {$push: { sharedPapers: userArray.sharedPaper }, status: 1,name:userArray.name},
function (error, success) {
if (error) {
res.json(error)
// console.log(error);
} else {
// res.json(user)
res.json(user)
// console.log("success");
}
});
}
else {
console.log(userArray.username,userArray.sharedPaper)
const newShare = new Share({
username: userArray.username,
sharedPapers: userArray.sharedPaper,
status:1
})
newShare.save((err, shareHistory) => {
if (err) {return res.json(err)}
else{res.json(shareHistory)}
})
}
})
)
})