最小 API:IFormFile 参数需要防伪检查

使用 IFormFileIFormFileCollection 的最小 API 终结点现在会要求使用新的防伪中间件进行防伪令牌验证。

引入的版本

ASP.NET Core 8.0 RC 1

旧行为

通过 IFormFileIFormFileCollection 从表单绑定参数的最小 API 终结点不需要防伪验证。

新行为

通过 IFormFileIFormFileCollection 从表单绑定参数的最小 API 终结点需要防伪验证。 如果未为定义这些输入类型的 API 注册防伪中间件,则会在启动时引发异常。

中断性变更的类型

此更改为行为更改

更改原因

对于使用表单中的数据的 API,建议使用防伪令牌验证作为安全预防措施。

可以使用 DisableAntiforgery<TBuilder>(TBuilder) 方法来为特定终结点退出防伪验证。

var app = WebApplication.Create();

app.MapPost("/", (IFormFile formFile) => ...)
  .DisableAntiforgery();

app.Run();

受影响的 API

不适用