无法从节点js中的api获取图像数据

时间:2019-12-28 18:07:22

标签: node.js express

console.log(item)显示除item.picture.file之外的所有字段。我将文件存储在变量emptyFilePath中。在将此变量分配给item.picture.file时,出于某些原因file的值不会更新。

var emptyFilePath;

const ObjSchema = new Schema({
    id:String,
    picture:{file:Object},
    name:String
});

const Item = mongoose.model('Item', ObjSchema);

var storage = multer.diskStorage({
    destination: function (req, file, cb) {
    cb(null, '../Front-End/public/images')
  },
  filename: function (req, file, cb) {
    cb(null, Date.now() + '-' +file.originalname )
  }
})

var upload = multer({ storage: storage }).single('file')

app.post('/upload',function(req, res) {

    upload(req, res, function (err) {
           if (err instanceof multer.MulterError) {
               return res.status(500).json(err)
           } else if (err) {
               return res.status(500).json(err)
           }
      console.log(req.file);
      emptyFilePath = req.file;
      return res.status(200).send(req.file)

    })
});

app.post('/admin',(req,res)=>{
    console.log("Body:",req.body);
    let item = new Item();
    item.id=req.body.id;
    item.picture.file=emptyFilePath;
    item.name=req.body.name;
    item.save();
    res.json(item);
    console.log("Item:",item);
})

而且,不久前它工作得很好,我能够将变量emptyFilePath的值存储在 item.picture.file 。我不确定当时发生了什么。

0 个答案:

没有答案