Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

143
Views
res.status().end() execute before the forEach code executes in node js

if ("csv" == devicesData['uploadType']) { var response = await deviceActivationHelper.validateAndImportMultipleDevices(devicesData, creds); //console.log("Inside controller response======", response) if(Array.isArray(response)) { if(response.length > 0) { let insertedData = []; let error = []; var count = 0;

        //response.forEach( data => {
        for( let data of response) {
          var device = new deviceActivation(data);
          return isSavedData = await new Promise(function(resolve, reject) {
            device.save({ checkKeys: false },(err, savedDevice)=>{
              if (err) {
                app.error("Error occurred while importing multiple devices : ", err);
                if (err.code == 11000) {
                  //res.status(400).json(app.errorHandler(false, false, 'Devices already exists.', 400)).end('');
                } else {
                  //res.status(500).json(app.errorHandler(false, false, 'DatabaseError, Unable to save devices.', 500)).end('');
                }
                reject({"error" : err.code});
              } else {
                insertedData.push(doc)
                if (savedDevice.data.activateNow == true  && savedDevice.onBoardStatus == 0) {
                  var id = savedDevice._id;
                  var deviceType = savedDevice.deviceType;
                  try {
                      deviceActivationHelper.startWorkFlow(deviceType, id, creds, function (err, data) {
                    })
                  } catch (error2) {
                    console.log("catch block =============", error2)
                  }
                }
                resolve( {"data": doc});
              }
            });
          })
          console.log("for count ====", isSavedData)
        } //)

        res.status(200).json({"success": true, "message": "Devices imported successfully.", "insertedData": insertedData, "error": error });// .end('');
        return res.end('');

      } else {
        res.status(500).json(app.errorHandler(false, false, 'Unable to import devices', 500)).end('');
      }
      // return response;
    } else {
      res.status(500).json(app.errorHandler(false, false, 'Unable to import devices', 500)).end('');
    }

  } 

Data is getting saved but insertedData & error is coming as empty array

================Response ==================== {"success":true,"message":"Devices imported successfully.","insertedData":[],"error":[]}

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!