@Lepilov

Как загружать файл через rest-api flask?

Я пользуюсь стандартной функцией загрузки файлов из документации Flask

@app.route('/', methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        if 'file' not in request.files:
            flash('No file part')
            return redirect(request.url)
        file = request.files['file']
        if file.filename == '':
            flash('NO selected file')
            return redirect(request.url)
        print(file.filename)
        if not allowed_file(file.filename):
            flash("Only JPG file is used")
            return redirect(request.url)
        if file and allowed_file(file.filename):
            filename = secure_filename(file.filename)
            file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))
            img = (os.path.join(app.config['UPLOAD_FOLDER'], filename))
            _, count = performDetect(imagePath=img)
            return redirect(url_for("result", count=count))
    return render_template("index.html")

Если использовать в качестве клиента браузер, то все работает. Сейчас тестирую загрузку через Postman, и при отправке получаю No file part
5c6a6f0ff1395324470456.png
Почему так происходит? Можно ли вообще использовать такой способ загрузки файлов в rest api?
  • Вопрос задан
  • 580 просмотров
Решения вопроса 1
planc
@planc
в key добавь название поля, в твоем случае: file
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы