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

Flask API接收Postman图片请求报错400 Bad Request求助

解决Flask接收图片时的BadRequestKeyError问题

1. 检查代码中的键名一致性

先确认你的Flask视图函数里,所有读取上传文件的代码都使用了正确的键名image——错误提示里的KeyError: 'file'说明代码中可能存在误写为request.files['file']的地方,和你Postman设置的键名不匹配。

正确的基础接收代码示例:

from flask import Flask, request

app = Flask(__name__)

@app.route('/predict', methods=['POST'])
def predict():
    # 先校验是否存在目标文件键
    if 'image' not in request.files:
        return "未提供图片文件", 400
    imagefile = request.files['image']
    # 这里可以加入你的模型预测逻辑
    return "图片接收成功", 200

if __name__ == '__main__':
    app.run(debug=True)

2. 核对Postman的请求配置细节

你提到键类型设为file、名称设为image,请再次确认以下几点:

  • 请求方法为POST,URL正确指向你的Flask接口(比如http://localhost:5000/predict)
  • 在Body标签下选择form-data格式
  • 新增的键:名称严格是image(区分大小写),类型选择File而非Text,并通过Select Files选择图片文件
  • 确保没有多余的键(比如误添加了名为file的键,导致代码尝试读取不存在的键)

3. 确认请求头自动生成

Postman在使用form-data上传文件时,会自动设置正确的Content-Type: multipart/form-data请求头。如果手动修改过请求头,会导致Flask无法解析请求,请恢复为自动生成的请求头。

4. 用最简接口排查问题

如果还是报错,先运行上面的最简测试接口,排除模型预测代码的干扰。确认最简接口能正常接收图片后,再逐步加入你的预测逻辑,定位是否是模型代码影响了请求解析。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 10:36:24