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

使用Bootstrap 5/FastAPI上传文件失败求助

解决Bootstrap 5表单上传文件被识别为字符串的问题

问题原因

你的HTML表单未指定正确的编码类型,默认的application/x-www-form-urlencoded会将文件字段以字符串形式传递,而FastAPI的UploadFile参数要求接收multipart格式的文件数据,因此触发类型错误。

解决方案

给表单标签添加enctype="multipart/form-data"属性,并确保表单使用POST方法提交。修改后的完整表单代码如下:

<form method="POST" enctype="multipart/form-data">
  <div class="mt-lg-3 mb-3">
    <label for="formFile" class="form-label">Upload template (formats: .j2 or .html only)</label>
    <input class="form-control" type="file" accept=".j2,.html" id="formFile" name="formFile">
  </div>
  <button type="submit" class="btn btn-primary">Upload</button>
</form>

关键说明

  • enctype="multipart/form-data":该属性强制浏览器以多部分表单数据格式发送请求,这是文件上传必须的编码类型。
  • 表单method必须设为POST:文件上传仅支持POST请求方式。
  • 确保文件输入框的name属性值(此处为formFile)与FastAPI接口中定义的参数名完全一致,避免字段匹配失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 14:27:13