How to send response in Node Express with file and data

417 Views Asked by At
module.exports.validateUser = function (req, res) {
  User.find({ 'username': req.body.username, 'password': req.body.password }, function (err, result) {
    if (result.length) {
        var gridfs = req.app.get('gridfs');
        var readstream = gridfs.createReadStream({
            _id: result[0]._doc.picture
        });
        req.on('error', function (err) {
            res.send(500, err);
        });
        readstream.on('error', function (err) {
            res.send(500, err);
        });

        // Just sends the file
        //readstream.pipe(res);
        res.send('This is incedible');
    } else {
        res.send(false);
    }
  });
};

Just after the user is validated I am getting the file associated with it. Further I want to send some data along with the fine in response. I've used multer and gridfs-stream. Is this achievable. If not, then does something looks fishy in this approach?

0

There are 0 best solutions below