I want to save an array of strings, but I am getting the following error:
Error: Can't set headers after they are sent.
this is my code to save:
router.post('/addalluserskills', function(req, res){
console.log(req.body);
var userSkill = new UserSkill();
userSkill.email = req.session.email;
for (var i = 0; i < req.body.mySkills; i++){
userSkill.user_skill_id = req.body.mySkills[i];
userSkill.save(function(err){
if(err) return res.send(err);
res.json({
message: '201: Successfully added skill'
});
});
}
});
Can't I do a save twice? I don't understand what could be the problem here. Is the connection still open and I need to close before sending another one?
Edited:
Answer:
router.post('/addalluserskills', function(req, res){
for (var i = 0; i < req.body.mySkills.length; i++){
var userSkill = new UserSkill();
userSkill.email = req.session.email;
userSkill.user_skill_id = req.body.mySkills[i];
userSkill.save(function(err){
if(err) return res.send(err);
});
}
res.json({
message: '201: Successfully added skill'
});
});