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

如何配置本地运行的Azure Functions V3以支持100MB文件上传

解决本地Azure Functions大文件上传的请求体大小限制问题

我之前也碰到过一模一样的问题!云端跑的时候大文件上传毫无压力,本地调试就一直报“请求体过大”,折腾了好久才找到根源:

Azure云端的Functions服务默认已经配置了适配大文件的请求体限制,但本地运行时用的Kestrel服务器默认有较小的上限,而且咱们常用的ASP.NET Core特性(比如[DisableRequestSizeLimit]或者[RequestSizeLimit(100000000)])在Functions本地环境里根本不生效——因为请求先经过Functions宿主的Kestrel处理,还没到你的函数代码就被拦截了。

解决方法很简单,直接在local.settings.json里添加Kestrel的配置就行:

{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    // 保留你原来的其他配置项
  },
  "Host": {
    "LocalHttpPort": 7071, // 你的本地端口,不用改
    "CORS": "*", // 保留原来的CORS配置
    "Kestrel": {
      "Limits": {
        "MaxRequestBodySize": 104857600 // 这里设置成100MB对应的字节数(100*1024*1024)
      }
    }
  }
}

配置完之后,一定要重启本地的Functions宿主,不然新配置不会生效。之后再试上传100MB的文件,应该就能正常处理了。

你提到的那个GitHub Issue(#5540)其实也讨论了这个本地与云端的配置差异问题,核心就是本地需要显式设置Kestrel的请求体大小,而云端已经默认帮咱们处理好了这些细节。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.09 15:02:39