MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Nút js POST Lỗi yêu cầu Lỗi [ERR_HTTP_HEADERS_SENT]:Không thể đặt tiêu đề sau khi chúng được gửi đến máy khách

Điều này đang xảy ra bởi vì bạn đang gửi phản hồi hai lần. Do đó, lỗi:

Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client

Thay đổi mã của bạn thành như sau:

router.post('/user', VerifyToken, function (req, res) {
User.findOne({ username: req.body.username }, function (err, user) {
    if (user) return res.status(400).send({status: 'ko', error: { msg: 'The username you have entered is already associated with another user.'}});

    var hashedPassword = bcrypt.hashSync(req.body.password, 8);
    User.create({
        firstname:req.body.firstname,
        surname:req.body.surname,
        username:req.body.username,
        email: req.body.email,
        password: hashedPassword,
        farmId: req.body.farmId,
        roles: req.body.roles,
        isVerified : req.body.isVerified,
        statusUser : req.body.statusUser
        },
        function (err, user) {
            if (err) return res.status(500).send("There was a problem adding the user to the database.");


            var client = nodemailer.createTransport(sgTransport(options));

            var email = {
                from: '[email protected]',
                to: req.body.email,
                subject: 'Registration successfully confirmed',
                text: 'Hi '+ req.body.username + ',\n\nyour account has been registered.\n\nAre you the farm owner?' +
                '\n\nPlease go to this link [CMS link] to create your Profile and start to use the App Plus!\n\n'+
                'If you are a simple user, please just use your credentials to login to the App Plus section into the new App!\n\n'+
                'Download for free from App Store or Google Play!\n\nRegards,\n\nTrelleborg TLC Plus team'
            };

            client.sendMail(email, function(err, json){
                if (err){
                    return res.status(500).send({ msg: err.message });
                }

               res.status(200).send({status: 'ok', data: { msg: 'A verification email has been sent to ' + user.email + '.'}, message: 'User saved.'} )

            });

        });

});

});


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Mongo không thể bắt đầu

  2. Kết hợp nhiều nhóm trong một tập hợp trong mongodb

  3. Truy vấn tổng hợp Mongodb để trừ và nhóm giá trị tích lũy

  4. Truy vấn regex Node.js và Mongoose trên nhiều trường

  5. Cách cài đặt và cấu hình MongoDB trên Ubuntu