Загрузка FileReader HTML5 занимает всю память браузера

Я разработал приложение для загрузки, которое использует HTML5 FileReader, jQuery и PHP. Память браузера увеличивается при каждой отправке порции, пока не достигнет ошибки «недостаточно памяти». Я делаю что-то неправильно? Вот мой сценарий:

function startUpload(file){
var freader = new FileReader();
var chunkN = 1;
var chunkSize = 1048576;
var fileSize = file.size;
var offset = 0;
var totalChunks = parseInt(fileSize / chunkSize);

if (fileSize % chunkSize != 0) {
totalChunks++;
}

var sendChunk = function(e){
if (e.target.readyState == FileReader.DONE) {
var result = e.target.result;
var fd = new FormData();

fd.append('file', result);

$.ajax({
url: 'ajaxr/upload.php',
type: 'post',
data: fd,
timeout: 10000,
cache: false,
processData: false,
contentType: false,
success: function (r) {
if (chunkN < totalChunks) {
chunkN++;
setTimeout(function() { createChunk(); }, 1000);
}
}
)};
}
}

function createChunk() {
offset = (chunkN - 1) * chunkSize;
var blob = file.slice(offset, chunkSize + offset);

freader.onload = sendChunk;
freader.readAsDataURL(blob);
}

createChunk();
}

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]