Встречается на собеседованиях • сегодня
Как загрузить файл частями
Для загрузки файла частями можно использовать File API и Blob.slice(). Разделяем файл на чанки и отправляем их последовательно или параллельно через fetch или XMLHttpRequest.
Пример:
javascript
async function uploadFileInChunks(file, chunkSize = 1024 * 1024) {
const totalChunks = Math.ceil(file.size / chunkSize);
for (let i = 0; i < totalChunks; i++) {
const start = i * chunkSize;
const end = Math.min(start + chunkSize, file.size);
const chunk = file.slice(start, end);
const formData = new FormData();
formData.append('file', chunk);
formData.append('chunkIndex', i);
formData.append('totalChunks', totalChunks);
await fetch('/upload', {
method: 'POST',
body: formData
});
}
}Ключевые моменты:
- Разбиваем файл на части через
Blob.slice() - Каждый чанк отправляем с метаданными (индекс, общее количество)
- Сервер должен уметь собирать чанки в правильном порядке
Для больших файлов можно добавить:
- Прогресс загрузки
- Возобновление при разрыве соединения
- Параллельную загрузку чанков

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы