2015-03-20 2 views
-2

Как загрузить изображение, полученное из мобильного приложения на другой сервер, с помощью модуля request в nodejs?Загрузка изображения с помощью «post» в nodejs с модулем запроса

Я попытался использовать многостраничный модуль для извлечения файла и отправки его в атрибуте formData с помощью модуля запроса (почтовый метод). Кажется, это не работает.

ответ

0

Пожалуйста, используйте следующий код, он был протестирован в экспресс. Вы можете изменить его в соответствии с вашими требованиями

var path = require('path'); 
var util = require('util'); 
if (req.files.profile_image !== undefined) { 
    var file = req.files.profile_image; 
    var tmp_path = file.path; 
    var fileName = file.name; 
    var milliseconds = new Date().getTime(); 
    var file_ext = fileName.substr((Math.max(0, fileName.lastIndexOf(".")) || Infinity) + 1); 
    var newFileName = requestedUser + '_' + milliseconds + '.' + file_ext; 
    var pathToFile = require('path').dirname(require.main.filename); 
    var mainPath = path.dirname(pathToFile) 
    var target_path = path.join(mainPath, 'public/uploads/users', newFileName); 
    var readStream = fs.createReadStream(tmp_path) 
    var writeStream = fs.createWriteStream(target_path); 
    util.pump(readStream, writeStream, function(err) { 
     if (err) { 
      //handle error 
     } else { 

      //successfully uploaded 
     } 
    }); 

} else { 
    //file not recieved 
} 

Thanks

Смежные вопросы