Я реализую загрузчик файлов s3, и мы пытаемся запросить ключ от сервера для загрузки файла, но в то же время проверяем параметры, которые дополнительно передаются так что пользователь не мешает загрузке файла, если что-то вроде имени файла недействительно:FineUploader: s3 поиск результатов поиска в зависании загрузки
objectProperties: {
key: function(fileId) {
var keyRetrieval = new qq.Promise(),
filename = $("#fineuploader-s3").fineUploader("getName", fileId);
$.post("/path_to_initiate_file_upload", { name: filename, current_folder: null })
.done(function(data) { keyRetrieval.success(data.key); })
.fail(function() { keyRetrieval.failure(); });
return keyRetrieval;
}
}
Сначала я столкнулся с проблемой # 1071 и с тех пор я просто закомментировать эту строку на некоторое время, но после этого я сейчас нахожусь в том месте, где, когда я возвращаю ответ не-200, он просто появляется. Есть ли что-нибудь, что я могу сделать в функции сбоя ключевого поиска, чтобы Fine Uploader знал, что эта конкретная загрузка не удалась и отобразило сообщение об ошибке?
Мне известно о «подтверждении» события для файла, но я бы предпочел не требовать двух отдельных вызовов ajax перед каждой загрузкой файла. Можно ли вызвать событие проверки, извлечь пользовательский файл из результата этого вызова, а затем сохранить его так, чтобы он использовался в качестве ключа для загрузки файла в s3?
Это, похоже, еще одна ошибка в поддержке ключевых функций Fine Uploader S3. Я бы предложил переместить ваш вопрос в проблему в треевом выпуске проекта Github. Мы планируем выпустить 4.2 завтра. Надеюсь, мы сможем это выпрямиться вовремя. –
[Проблема зарегистрирована и исправлена] (https://github.com/Widen/fine-uploader/issues/1093) в ветке разработки. Вскоре я расскажу о некоторых деталях. –