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

如何修复413 Payload Too Large错误?Angular+Net Core5本地调试

解决Angular + .NET Core 5大文件上传413 Payload Too Large问题

只配置FormOptions不足以解决大文件上传的413错误,你需要从以下几个维度逐一排查配置:

  • 配置Kestrel服务器请求限制
    .NET Core 5的Kestrel服务器默认有请求大小上限,需要显式修改。在Startup.cs的ConfigureServices方法中添加:

    services.Configure<KestrelServerOptions>(options =>
    {
        options.Limits.MaxRequestBodySize = long.MaxValue; // 可设置具体数值,如1073741824表示1GB
    });
    
  • 给上传接口添加请求大小限制特性
    在处理文件上传的控制器或Action上,添加[RequestSizeLimit]或[DisableRequestSizeLimit]特性,确保接口层面放开限制:

    [ApiController]
    [Route("api/upload")]
    public class UploadController : ControllerBase
    {
        [HttpPost]
        [RequestSizeLimit(long.MaxValue)]
        public async Task<IActionResult> UploadFile()
        {
            // 你的文件上传逻辑
        }
    }
    
  • 检查Angular端上传逻辑
    确保前端用FormData正确构造请求,且HttpClient没有被拦截器限制大小:

    uploadFile(file: File): Observable<any> {
        const formData = new FormData();
        formData.append('file', file);
        return this.http.post('/api/upload', formData);
    }
    
  • 本地IIS Express调试的额外配置
    如果后端用IIS Express启动,还需要修改IIS的请求限制配置:
    找到项目的applicationhost.config文件(通常在.vs\config目录或%USERPROFILE%\Documents\IISExpress\config下),找到对应站点的配置节点,添加或修改:

    <security>
        <requestFiltering>
            <requestLimits maxAllowedContentLength="1073741824" /> <!-- 1GB,单位为字节 -->
        </requestFiltering>
    </security>
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 11:10:03