2016-12-07 27 views
0

我刚开始节点返回图像的URL。我要上传图片到服务器,我使用multer的上传图片。我使用下面的代码,我能够将图像上传到服务器,但无法将图像的URL发送回客户端的成功响应。任何帮助将是如何使用multer

var request = require('request'); 
var app = require('../app'); 
var util = require('../response_util'); 
var multer = require('multer'); 
var storage = multer.diskStorage({ 
    destination: function (req, file, callback) { 
    callback(null, 'public/upload'); 
    }, 
    filename: function (req, file, callback) { 
    var imageUrl = file.fieldname + '-' + Date.now()+'.jpg'; 
    callback(null, imageUrl); 
    } 
}); 
var upload = multer({ storage : storage }).single('image'); 

app.get('/img/home',function(req,res){ 
    res.send("welcome to image home"); 
}); 

app.post('/img/upload',function(req,res) { 
    upload(req,res,function(err,result) { 
    console.log(err); 
    console.log(result); 
     if(err) { 
      return res.end("Error uploading file."+err); 
     } 
     res.end("File is uploaded url : "+result); 
    }); 
}); 

回答

0
app.post('/img/upload',function(req,res) { 
upload(req,res,function(err,result) { 
console.log(err); 
console.log(result); 
    if(err) { 
     return res.end("Error uploading file."+err); 
    } 
    var path = req.file.path; 
    res.end("File is uploaded url : " + this.path); 
}); 

可以使用req.file.path对象multer需要上传的文件的路径。这是为我工作。