如何使用express,node,mongodb在同一响应中发送带有文件的json数据?

时间:2017-04-25 06:35:02

标签: javascript json node.js mongodb express

我使用multer和gridfs存储上传文件,一切正常。上传文件后,我在用户集合中保存了userdetails和filepath。

现在我想从用户集合中检索用户数据。

响应我需要发送图像和用户详细信息

app.get('/user', function(req, res){
    User.findById('58fdea1793e794256c2e0820', function (err, user) {
    if(err) { return handleError(res, err); }
    if(!user) { return res.status(404).send('Not Found'); }

    //console.log(user);
         var readstream = gfs.createReadStream({
                filename: user.filepath,
                root: "ctFiles"
            });
            /** set the proper content type */
            res.set('Content-Type', user.filepath.contentType)


           //return readstream.pipe(res);
            return res.json(user);

  });

对于这个用户我得到这样的回复

{ _id: 58fdea1793e794256c2e0820,
  name: 'asdfs',
email:'asdf@gmail.com'
  filepath: 'file-1493035543005.jpg',
  __v: 0 }

如果我使用'return readstream.pipe(res);'图像显示 但我想发送iamge以及姓名和电子邮件

帮帮我

0 个答案:

没有答案