【发布时间】:2021-01-30 11:17:21
【问题描述】:
我想处理多部分文件上传,所以在我的处理程序中我得到了IFormFeature,如下所示:
var formFeature = ctx.Features.Get<IFormFeature>()
但是,它始终是null。
我的请求如下所示:
curl -v -X POST -H "Content-Type: multipart/form-data" -F records=@big-file.csv localhost:8080/form
我需要做什么才能在 ASP.Net / Kestrel 中启用IFormFeature?
【问题讨论】:
-
在 aspnet.core github 上搜索
IFormFeature得到 11 次点击(主要是测试)。只有两个地方设置功能ex,它们都要求请求具有表单内容类型。只是为了验证您的标头是否被识别,您可以检查ctx.Request.HasFormContentType的值吗? -
通过
curl命令,我将内容类型设置为multipart/form-data -
这不是我要问的,我看得出来。我在问您是否已验证 aspnet 已正确检测到它
-
我添加了一个快速打印
HasFormContentType? true是的,确实如此 -
我没有答案。我建议这是一个地方开始。它应该为您自动设置,我知道您无需添加任何内容即可启用其中任何一项。如果您没有得到答案,我会在他们的 github 或 gitter 上询问
标签: c# asp.net .net-core kestrel-http-server