Multer + ng-file-upload

时间:2017-06-30 07:59:40

标签: angularjs node.js express multer angular-file-upload

我正在尝试将一些文件从AngularJS上传到我的Node.js服务器,我总是得到req.file undefined。

这是我的Angular上传(使用ng-file-upload

客户端HTML

<span ngf-select ngf-change="uploadFiles($files)" ngf-multiple="true">
    <i class="fa fa-upload"></i>
</span>

客户控制器

    $scope.uploadFiles = function (files, error) {
      angular.forEach(files, function (file) {
        Upload.upload({
          url: '/api/upload',
          method: 'POST',
          data: {file: file}
        }).then(function (response) {
            return response.data;
        });
    });
  };

服务器路线

var multer = require('multer');
var upload = multer({dest:'./files'}).any();
server.post('/api/upload', function (req, res) {
    console.log(req.files);
    /* DISPLAY :
     { file: 
       { name: 'Migration_IP_COMMLINK.csv',
       data: <Buffer 52 41 44 52 45 50 4c 59 5f 49 44 3b 55 53 45 52 4e 41 4d 45 3b 43 55 52 52 45 4e 54 5f 49 50 3b 4e 45 57 5f 49 50 0d 0a 34 31 34 36 3b 30 33 38 38 34 ... >,
       encoding: '7bit',
       mimetype: 'application/vnd.ms-excel',
       mv: [Function] } } */
    upload(req, res, function(err) {
        if (err) throw err;
        console.log(req.files, req.file); // Display : [] undefined
    });
    res.status(200).json(null);
});

任何人都可以帮助我?

0 个答案:

没有答案