python config_error ai_generated true

FastAPI HTTP 异常:请求实体过大

fastapi.exceptions.HTTPException: 413 Request Entity Too Large

ID: python/fastapi-upload-file-size-limit

其他格式: JSON · Markdown 中文 · English
80%修复率
84%置信度
0证据数
2025-01-20首次发现

版本兼容性

版本状态引入弃用备注
3.9 active
3.10 active

根因分析

上传的文件大小超过了 FastAPI 或服务器的限制

English

上传的文件大小超过了 FastAPI 或服务器的限制

generic

解决方案

  1. 90% 成功率 使用 UploadFile 并设置最大大小
    from fastapi import UploadFile, File
    app = FastAPI()
    @app.post('/upload')
    async def upload(file: UploadFile = File(...)):
        if file.size > 10 * 1024 * 1024:
            raise HTTPException(413, '文件太大')
  2. 95% 成功率 配置服务器限制
    uvicorn.run(app, limit_max_request_body=10*1024*1024)

无效尝试

常见但无效的做法:

  1. 在前端压缩文件但后端限制未改 60% 失败

    压缩后仍可能超过限制,且质量下降

  2. 忽略错误并重试上传 90% 失败

    每次都会失败,浪费带宽