Как использовать Ajax для передачи файлов .docx, получения и сохранения их с помощью фляги? - PullRequest
0 голосов
/ 22 апреля 2019

Я намереваюсь прочитать файл на внешнем интерфейсе, перенести его на задний конец и сохранить файл на заднем конце.

Мой внутренний конец использует колбу, внешний интерфейс использует Ajax для передачи,и тип данных для передачи - json.

внешний интерфейс JS:

var f = files[0];
var reader = new FileReader();
reader.readAsText(f);
reader.onload = function (e) {
    var dataBase64 = e.target.result;
    var videoNum = dataBase64.split(";base64,");
    var data = {
        'text': videoNum,
        'type': f.type
    };
    $.ajax({
        type: 'POST',
        url: "/load",
        data: JSON.stringify(data),
        contentType: 'application/json; charset=UTF-8',
    });
};

внутренний конец Python:

getJson = request.get_json()
text = getJson['text'][0]
if getJson['type'] == "application/vnd.openxmlformats-officedocument.wordprocessingml.document":
    print("get docx file")
    with open('static/file/' + 'xxx.docx', 'wb') as f:
        # TODO

Я не знаю, как преобразоватьполучил строку в двоичный файл правильно и сохраните ее.

Я слышал, что Ajax изменяет двоичные данные, поэтому рекомендую XmlHttpRequest, но я не получил данные успешно с помощью XmlHttpRequest.Я хочу знать, как лучше всего передавать файлы .docx и использовать колбу в бэкэнде?

...