MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Błąd żądania POST węzła js Błąd [ERR_HTTP_HEADERS_SENT]:nie można ustawić nagłówków po ich wysłaniu do klienta

Dzieje się tak, ponieważ wysyłasz odpowiedź dwukrotnie. Stąd błąd:

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

Zmień kod na następujący:

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. MongoDb z FastAPI

  2. Jak zmienić klucz odłamkowy?

  3. Filtruj według kraju i swobodnego wyszukiwania tekstu mongodb za pomocą mongoose

  4. ABC NestJS:Przewodnik dla początkujących z MongoDB (Mongoose).

  5. Konwertuj ciąg na MongoDB BsonDocument