我正在尝试使用 Filepicker.io 作为上传器,但为了为有效负载中的每个文件触发 onSuccess 事件,我使用了 .pickMultiple 和 .store 方法的组合。像这样:
filepicker.pickMultiple(function(fpfiles){
for(var i = 0; i < fpfiles.length; i++){
//Clean the filename
//Check duplicate
//Store the file on S3
filepicker.store(
fpfiles[i].url,
{location: 'S3', path: 'filepicker/' + fpfiles[i].filename},
function(my_uploaded_file){
//Do some other cool stuff ...
}
);
}
});
(这与使用 .pickAndStore 方法相反,该方法只会在整个有效负载完成传输后触发 onSuccess 事件)
我遇到的问题是,似乎认为 .pickMultiple 方法是“自动”将文件的副本保存在我的 S3 存储桶的根目录中;所以我最终得到了同一个文件的两个副本。
例如:
如果我将 my_file.png 上传到存储桶中名为 IMAGES 的文件夹,我应该得到http://s3.amazonaws.com/my_bucket/IMAGES/my_file.png的结果
这正在发生,但我也得到了: http ://s3.amazonaws.com/my_bucket/UNIQUE_ID_my_file.png
任何人都知道如何防止 .pickMultiple 自动将文件添加到我的 S3 存储桶中?
谢谢你的帮助。