使用" ng-file-upload",无法上传文件,15 MB(或部分上传)

时间:2017-02-08 13:59:49

标签: angularjs node.js ng-file-upload

我正在使用" ng-file-upload":" 12.2.13"," angular":" 1.4.7", "节点":" 6.9.0"和" npm":" 3.10.8"。

我导入的文件大小为> 20 MB并没有显示出来。然后我尝试了12 MB并且它出现了。正确上载所有小于12MB的文件。所有文件导入POST请求都得到200响应。但保存文件的位置显示没有或部分上传的文件。我使用resumeSizeUrl和resumeChunkSize = 10MB来上传块。 nginx max文件大小上传没有问题,它已经增加(15MB)。不确定是什么问题;控制台或服务器端没有日志。

我的设置中的一种可能性是,我们的生产有多个圆形实例的门户实例。因此,一个实例可能会获取数据并写入,然后另一个实例获取数据并进行混乱。但不知道如何调试。 ng-file-upload有没有办法在每次发送数据时持久保存单个实例?它如何处理/发送数据到多个实例?

以下是代码段 {代码}

    const url = window.location.protocol + '//' + window.location.host;

    file.uplaod = Upload.upload({
      url: url + '/api-file-upload',
      data: { file: file },
      resumeSizeUrl: url + '/file-size,
      resumeSizeResponseReader: function (data) {
        return data.size;
      },
      resumeChunkSize: 1024 * 1024 * 10
    });

    file.upload.progress(function (evt) {
     // upload progress
    });

    file.upload.catch(function (err) {
      //catch error;
    });

这是nodejs代码, 获取chuck文件数据的API

server.route({
    method: 'POST',
    path: '/api-file-upload',
    config: {
        payload: {
            maxBytes: 15728640,
            output: 'stream',
            parse: false
        },
    },
    handler: function (req, res) {
        const form = new multiparty.Form();
        form.parse(req.payload, function (err, fields, file) {});
    }
})

0 个答案:

没有答案