我正在使用" 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) {});
}
})