Загрузка файлов с компьютера снова работает: форма собиралась уже после блокировки поля файла, и браузер отправлял пустой запрос (ошибка 422)

Этот коммит содержится в:
2026-09-27 16:20:58 +09:00
родитель b7c87867fb
Коммит af9cae85de
2 изменённых файлов: 13 добавлений и 1 удалений
+3 -1
Просмотреть файл
@@ -300,6 +300,8 @@
const file = input.files[0];
if (!valid(file)) { setError('Выберите файл'); return; }
const started = Date.now();
// FormData собираем до setActive: заблокированное поле файла браузер в отправку не включает.
const data = new FormData(form);
xhr = new XMLHttpRequest();
setActive(true); progress.hidden = false; progress.classList.remove('success', 'danger');
statusEl.textContent = 'Загрузка на сервер…';
@@ -337,7 +339,7 @@
xhr.open('POST', form.action);
xhr.setRequestHeader('Accept', 'application/json');
xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');
xhr.send(new FormData(form));
xhr.send(data);
});
showFile();
}