Bot Framework webChat上传附件是否存在大小限制 4MB以上超时问题咨询
Bot Framework WebChat 附件上传问题解答
- WebChat默认走Azure Bot通道传输附件时,固定最大支持4MB大小的附件,该限制与Azure Bot定价层无关,升级定价层无法突破该限制。
- 你遇到的本地Bot Emulator无大小限制、发布到App Service后4MB以上附件上传失败且请求无法到达Bot端的问题,首先是由App Service默认的请求大小限制导致的,该限制默认值通常为2MB-4MB不等,会在请求到达Bot代码前直接拦截超量请求。
- 对应解决方案分两种场景:
- 仅需要支持4MB以内的附件上传:只需调整App Service的请求大小配置即可
- 如果你使用的是.NET Framework项目,修改
web.config文件:在<system.web>节点下添加<httpRuntime maxRequestLength="4096" />(单位为KB,4MB对应4096),同时在<system.webServer>节点下添加<security><requestFiltering><requestLimits maxAllowedContentLength="4194304" /></requestFiltering></security>(单位为字节,4MB对应4194304) - 如果你使用的是.NET Core/.NET 5+项目,在程序启动配置中添加Kestrel请求体限制配置:
builder.WebHost.UseKestrel(options => { options.Limits.MaxRequestBodySize = 4 * 1024 * 1024; })
- 如果你使用的是.NET Framework项目,修改
- 需要支持4MB以上的附件上传:必须使用自定义上传逻辑,不要走Bot通道传输文件本体。你可以在前端实现文件直接上传到对象存储的逻辑,上传完成后仅将文件的访问链接传递给Bot侧即可,该方案不受Bot通道的附件大小限制,可支持任意大小的文件传输。
- 仅需要支持4MB以内的附件上传:只需调整App Service的请求大小配置即可
内容的提问来源于stack exchange,提问作者Aravind
相关产品推荐
相关产品推荐

