角度文件上传大小

时间:2016-04-28 07:55:12

标签: angularjs angular-file-upload

我使用https://github.com/nervgh/angular-file-upload/,我需要将文件大小发送到后端服务器。

我找不到任何解决方案,这是我收到的标题:

{
  filename:'new02.png',
  headers:{
    'content-disposition':'form-data; name="files"; filename="new02.png"',
    'content-type':'image/png'
  }
}

2 个答案:

答案 0 :(得分:1)

$scope.uploadFile = function(files) {
files[0].type; //MIME type
files[0].size; //File size in bytes
}; 

答案 1 :(得分:0)

我也使用angular-file-upload和node.js服务器。

这是我在角度控制器中上传文件的方式:

$scope.uploadInternationalFile = function(file) {
    if (file && file.length) {
        file.upload = Upload.upload({
            url: '/api/upload',
            method: 'POST',
            file: file
        });
        file.upload.then(function(response) {
            // file Sent
        });
    }
};

我在我的服务器上接收了这样的文件,如下所示:npm' multer'包:

<强> module.js

var privateStorage = multer.diskStorage({
    destination: function(req, file, callback) {
            callback(null, './files/');
        },
        filename: function(req, file, callback) {
            callback(null, file.originalname);
        }
    });

    var limits = {
        fieldNameSize: 100,
        fileSize:20000000,
        files: 1,
        fields: 5
    };

    var self = module.exports = {
        uploadPrivate: multer({
            storage:privateStorage,
            limits:limits
        }).single('file')
    };

这是我的API:

var fileUpload = require('module.js');
    app.post('/api/upload', function(req, res) {
        fileUpload.uploadPrivate(req, res, function(err) {
            if (err) {
                // There is an upload error
            }
            else {
                // Your file has been sent
            }
        }
    });

希望它有所帮助。