我使用精细上传器5.0.6将图片上传到我的amazon s3帐户,我在其中设置了以下选项:
autoUpload: false
validation: max 10mb, min 400kb
custom filename
如下:
var manualuploader = jQuery("#fine-uploader").fineUploaderS3({
...,
autoUpload: false,
validation: {
allowedExtensions: ['jpeg', 'jpg', 'png'],
sizeLimit: 10000000, // 10mb
minSizeLimit: 400000 // 400kb
},
objectProperties: {
key: function (fileId) {
var filename = jQuery('#fine-uploader').fineUploader('getName', fileId);
var uuid = jQuery('#fine-uploader').fineUploader('getUuid', fileId);
var ext = filename.substr(filename.lastIndexOf('.') + 1);
design_name = design_name.replace(/[^a-z0-9\s]/gi, '');
folder_name = design_name.replace(/\s/g, '-');
return artist + '/' + folder_name + '/original.' + ext;
}
}
...
});
jQuery('#triggerUpload').click(function() {
manualuploader.fineUploaderS3('uploadStoredFiles');
});
这是按预期工作的,但现在我需要包含一个500px缩放的图像,同时上传到s3。我知道我可以使用scaling
对象执行此操作,但它不能与我的代码一起使用。尝试了几种方法后,我似乎已经解决了这些问题:
当我在以下内容中添加以下内容时:
scaling: {
sizes: [
{name: "web", maxSize: 500}
]
}
只有原始/主文件上传到s3服务器,而不是两者都按预期上传。如果我使用sendOriginal: false
,那么'网络'版本确实被发送到服务器。
此外,我更改了objectProperties{key
中的文件名,使其成为
artist/folder/original.ext
我还需要能够让较小的网络版本遵循相同的结构,所以它是:
artist/folder/web.ext
这可能吗?
答案 0 :(得分:0)
我无法通过缩放或验证重现您报告的问题。您可以通过objectProperties.key
选项更改文件的密钥名称,就像您现在所做的那样。您应该能够查看文件的原始名称,以确定它是原始版本还是缩放版本。