@richie_mayert
Для принятия файла, отправленного через Ajax, в Flask, вы можете использовать модуль flask.request
. Следуйте приведенным ниже шагам:
1 2 |
from flask import Flask, request app = Flask(__name__) |
1 2 3 4 5 |
@app.route('/upload', methods=['POST']) def upload_file(): file = request.files['file'] # Обработка файла return 'Файл успешно загружен' |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
var fileInput = document.getElementById('file-input'); var file = fileInput.files[0]; var formData = new FormData(); formData.append('file', file); var xhr = new XMLHttpRequest(); xhr.open('POST', '/upload', true); xhr.onload = function() { if (xhr.status === 200) { console.log('Файл успешно загружен'); } else { console.log('Ошибка при загрузке файла'); } }; xhr.send(formData); |
В этом примере файл выбирается с помощью элемента file-input
. Затем он добавляется в объект FormData
, который затем отправляется на сервер с использованием XMLHttpRequest.
1 2 |
if __name__ == '__main__': app.run() |
Теперь ваш сервер Flask будет принимать файлы, отправленные через AJAX. Вы можете добавить дополнительную логику обработки файла перед возвратом ответа на клиент.