python data_error ai_generated true

Starlette HTTP 异常:413 请求实体过大。

starlette.exceptions.HTTPException: 413 Request Entity Too Large

ID: python/starlette-memory-upload-too-large

其他格式: JSON · Markdown 中文 · English
80%修复率
81%置信度
0证据数
2024-08-22首次发现

版本兼容性

版本状态引入弃用备注
3.x active

根因分析

上传的文件大小超过服务器的最大请求体大小限制(Starlette 默认 1MB)。

English

Uploaded file size exceeds server's maximum request body size limit (default 1MB in Starlette).

generic

解决方案

  1. 90% 成功率
    In Starlette, set max request size: app = Starlette(max_request_size=10*1024*1024) # 10MB
  2. 85% 成功率
    Use streaming upload: async def upload(request):
        async for chunk in request.stream():
            process(chunk)

无效尝试

常见但无效的做法:

  1. 70% 失败

    Application still enforces its own limit; must configure both.

  2. 80% 失败

    Starlette reads entire body into memory before processing; limit applies first.