Masalah berikut terjadi menggunakan Firefox v73 pada Window 7:
Dalam kode saya, saya menggunakan multi-file-picker dalam html untuk mengunggah hingga 100-file parallal:
<input type="file" id="files" name="files" multiple>
File akan dikirim ke REST-API yang memprosesnya sesudahnya. Ketika saya memilih satu file (dalam file-explorer) yang sedang digunakan, saya mendapatkan pesan kesalahan (mungkin melalui jendela) yang memberitahu saya, bahwa file tidak dapat dipilih karena sedang digunakan. Jika saya mencoba untuk memilih beberapa file yang berisi satu atau lebih file yang digunakan, saya tidak memiliki kesalahan tetapi pengunggahan tampaknya berhenti ketika file yang sedang digunakan tercapai dan menunggu file akan dirilis. Ini mengarah ke permintaan untuk menunggu batas waktu (yaitu 1 menit dalam kasus saya).
Apakah ada opsi untuk menangkap masalah (file yang digunakan) sebelum mencoba mengunggah file?
PS: Saya sudah mencoba yang sama di Chrome dan itu mengembalikan kesalahan sebelum mengirim permintaan ke REST-API.
sumber
Jawaban:
Itu terdengar seperti masalah OS.
Ada sesuatu yang mengunci file Anda agar tidak diakses dan ini membutuhkan perbaikan di sisi Anda.
Saya ragu itu akan menjadi masalah umum, dan cukup sulit untuk membangun solusi tanpa dapat mengalami masalah yang sama tetapi satu hal yang dapat Anda coba adalah membaca File Anda sebelum mengirimnya. Ini dapat dilakukan dengan cukup mudah dengan
Blob.prototype.arrayBuffer
metode, yang dapat diisi dengan polif.Untuk menghindari banyak I / O, Anda bahkan dapat mencoba membaca hanya sebagian kecil darinya, berkat
Blob.prototype.slice()
metode.sumber
Untuk memilih beberapa file mengapa Anda tidak menggunakan https://github.com/blueimp/jQuery-File-Upload
sumber