asp.net-core - ASP.NET Core 2.1 中 [ApiController] 中的 POST 操作
问题描述
我有以下 ASP.NET Core 2.1 Api 控制器:
[Route("api/[controller]")]
[ApiController]
public class ImagesController : ControllerBase
{
[HttpPost("[action]")]
public async Task<IActionResult> Upload([FromForm]ICollection<IFormFile> files)
{ ... }
[HttpGet("thumbnails")]
public async Task<IActionResult> GetThumbNails()
{ ... }
GET 和 POST 操作都适用于 Postman。
但是,POST 操作不适用于 UI:该操作将始终收到 0 的文件参数计数(有关故障的完整详细信息,请参见此处)。
[ApiController]
我最终通过从控制器中删除属性来修复故障:
[Route("api/[controller]")]
//[ApiController]
public class ImagesController : ControllerBase
{ ... }
我的问题是为什么[ApiController]
控制器属性会阻止 POST 方法从 UI 接收文件?这里发生了什么?是路由问题吗?
解决方案
推荐阅读
- javascript - 无法在 Javascript/Typescript 中使用 Google Analytics 测量异常
- go - 如何在 Go 中计算一个非常大的文件的 SHA256?
- python - 如何使用熊猫根据单元格值突出显示整行
- python-3.x - 在python中用换行打印
- php - 当用户输入错误时 PHP 代码成功完成
- r - 有没有办法在柔性表中设置有效数字显示?
- javascript - 从JS中的表中提取数据的最有效方法是什么
- javascript - Webpack + Babel 正在转译 Webpack 加载器,我该如何防止这种情况?
- javascript - 我正在尝试在我的 laravel 项目中添加 java 脚本,但我发现了一些错误
- django - ModelMultipleChoiceField 引发“输入值列表”。