You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask图片上传API调用Postman时返回400错误求助

解决Flask API上传图片400错误的方案

你的代码存在语法错误,同时Postman的请求配置也可能触发400错误,以下是具体排查和修复步骤:

一、修复代码中的问题

你的代码有无效代码和未定义变量,先修正逻辑与语法:

@app.route('/user_image', methods=["POST"])
def user_image():
    # 用get方法获取文件,避免无此字段时抛出KeyError返回400
    uploaded_img = request.files.get('uploaded_file')
    # 检查文件是否有效
    if not uploaded_img or uploaded_img.filename == '':
        return jsonify({'error': '未上传有效文件'}), 400
    
    img_filename = secure_filename(uploaded_img.filename)
    upload_path = os.path.join(app.config['UPLOAD_FOLDER'], img_filename)
    uploaded_img.save(upload_path)
    
    # 移除无效的代码行,若需description等参数,需先从请求中获取(示例)
    # description_value = request.form.get('description', '')
    # short_description_value = request.form.get('short_description', '')
    
    return jsonify({'submitted_record': upload_path})

二、Postman请求配置检查

400错误大多源于请求格式不匹配,按以下步骤配置:

  • 选择POST请求,填入你的API地址(如http://localhost:5000/user_image)
  • 切换到Body标签,选中form-data格式
  • 添加Key为uploaded_file(必须与代码中request.files的键一致),Value类型选择File,再选择本地图片文件
  • 若代码中需要description等字段,在form-data中添加对应Key和Value

三、额外配置验证

  • 确保Flask app已正确配置上传目录,且目录存在:
    import os
    app.config['UPLOAD_FOLDER'] = os.path.join(os.path.dirname(__file__), 'uploads')
    # 自动创建不存在的上传目录
    os.makedirs(app.config['UPLOAD_FOLDER'], exist_ok=True)
    

内容的提问来源于stack exchange,提问作者venkat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 02:37:06