2017-07-26 106 views
0

我是新来的节点JS,我已经做了从API上传图像的功能。 但是,当我从邮递员使用形式数据有字段名称图像的网址,然后作出回应它显示我。 Here is the postman imagenodejs如何从API上传图片

上传文件时出错

下面

是我的代码

我router.js包含: -

var express = require('express'); 

var router = express.Router(); 

var ctrlSteuern = require('../controllers/steuern.controllers.js'); 

路由器

.route('/steuern/image_upload') 
.post(ctrlSteuern.imageUpload); 

在控制器我有: -

var multer = require('multer'); 

var multiparty = require('multiparty'); 

var storage = multer.diskStorage({ 

destination: function (req, file, callback) { 

callback(null, './image'); 

}, 

filename: function (req, file, callback) { 

callback(null, file.fieldname + '-' + Date.now()); 

} 

}); 

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

module.exports.imageUpload = function(req, res){ 

upload(req,res,function(err) { 

if(err) { 

return res.end("Error uploading file."); 

} 

return res.end("File is uploaded"); 

}); 

} 

回答

0

这里是我的图片保存到文件夹代码。

exports.saveMedia = (req, res) => { 
     const storage = multer.diskStorage({ 
      destination: (req, file, callback) => { 
       callback(null, (config.const.path.base + config.const.path.productReviewMedia)); 
      }, 
      filename: (req, file, callback) => { 
       callback(null, Date.now() + '-' + file.originalname); 
      } 
     }); 

     const upload = multer({storage: storage}).any('file'); 

     upload(req, res, (err) => { 
      if (err) { 
       return res.status(400).send({ 
        message: helper.getErrorMessage(err) 
       }); 
      } 
      let results = req.files.map((file) => { 
       return { 
        mediaName: file.filename, 
        origMediaName: file.originalname, 
        mediaSource: 'http://' + req.headers.host + config.const.path.productReviewMedia + file.filename 
       } 
      }); 
      res.status(200).json(results); 
     }); 
} 

enter image description here

这里是邮递员请求。

+0

感谢您的回复,但在我尝试console.log req.files时输入他的代码,然后cmd显示为未定义。 – Ashutosh

+0

你能告诉你的代码,你的文章的人要求 – sohamdodia

+0

常量存储= multer.diskStorage({ 目标:(REQ,文件,回调)=> { 回调(NULL, './image');} , 文件名:(req,file,callback)=> {callback(null,Date.now()+' - '+ file.originalname); } }); – Ashutosh