Измените содержимое файла перед загрузкой с помощью FileReader, используя JavaScript - PullRequest
0 голосов
/ 11 января 2019

Можно ли изменить содержимое файла перед загрузкой в ​​javascript? Я могу читать содержимое, но изменить его кажется невозможным.

    f = document.getElementById('input').files[0];
    var reader = new FileReader();
    reader.onload = function(e){
        console.log(e.target)
        e.target.result = "new content"
        console.log(e.target);
    };
    reader.readAsDataURL(f);

1 Ответ

0 голосов
/ 11 января 2019

Нельзя переписать значение входного файла.

Вы можете взять содержимое файла и отправить его с помощью Ajax.

reader.onload = function(e){
    const data = new FormData();
    const url = this.result;
    const blob = convertUrlToBlob(url);
    data.append("file_input", blob, "filename.ext");
    const xhr = new XMLHttpRequest();
    xhr.open('POST', '/example/url');
    xhr.send(data);
};

Я не буду вдаваться в детали того, как написать функцию convertUrlToBlob, она покрыта этим вопросом .

...