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

Azure API应用服务大文件上传CORS报错及500状态码问题咨询

解决Azure API App大文件上传时的CORS+500错误问题

这个问题其实是典型的「表象是CORS错误,根源是服务器端限制」的情况——当文件超过20MB时,你的API App先触发了内部错误(HTTP 500),但错误响应里没有返回CORS头,浏览器就把这个问题判定为CORS不允许访问,而不是告诉你真正的文件大小限制问题。下面是具体的解决步骤:

1. 调整API App的请求大小限制

Azure App Service默认的最大请求大小是20MB,刚好是你遇到问题的阈值,所以首先要修改这个限制:

  • 登录Azure门户,找到你的API App,进入「配置」→「常规设置」,找到「最大请求大小」选项,将其调整为你需要的数值(比如100MB,对应输入102400,单位是KB)。
  • 如果你的API是基于ASP.NET/ASP.NET Core开发的,还要在代码层面同步配置:
    • ASP.NET Core:在Program.cs中添加Kestrel的请求大小限制配置:
      builder.WebHost.ConfigureKestrel(options =>
      {
          // 设置最大请求体大小为100MB(单位字节)
          options.Limits.MaxRequestBodySize = 104857600;
      });
      
      或者在需要处理大文件的控制器/Action上添加特性:
      [RequestSizeLimit(104857600)]
      public async Task<IActionResult> UploadVideo()
      {
          // 上传逻辑
      }
      
    • 传统ASP.NET:在web.config中添加以下配置:
      <system.web>
          <!-- maxRequestLength单位是KB,这里设置为100MB -->
          <httpRuntime maxRequestLength="102400" />
      </system.web>
      <system.webServer>
          <security>
              <requestFiltering>
                  <!-- maxAllowedContentLength单位是字节,这里设置为100MB -->
                  <requestLimits maxAllowedContentLength="104857600" />
              </requestFiltering>
          </security>
      </system.webServer>
      

2. 确保错误响应也携带CORS头

即使请求触发了500错误,API也应该返回CORS头,这样浏览器才能正确识别错误原因,而不是抛出CORS相关的误导性错误。以ASP.NET Core为例,可以通过全局异常处理中间件实现:

app.UseExceptionHandler(errorApp =>
{
    errorApp.Run(async context =>
    {
        context.Response.StatusCode = StatusCodes.Status500InternalServerError;
        // 添加CORS头
        context.Response.Headers.Add("Access-Control-Allow-Origin", "*");
        // 返回自定义错误信息
        await context.Response.WriteAsync("上传过程中出现错误,请检查文件大小是否超出限制。");
    });
});

3. 前端请求的额外检查

如果你的Web App前端是用框架(比如React、Vue)发起请求,确保:

  • 大文件上传时使用FormData正确封装文件,没有遗漏必要的请求头。
  • 调整请求超时时间,避免大文件上传过程中超时。

完成以上配置后,重新部署API App,再测试上传超过20MB的视频文件,应该就能正常处理了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:39:56