【发布时间】:2019-12-20 17:18:31
【问题描述】:
我们在控制器中得到以下代码:
[HttpPost("v1/item/{id}/images")]
public async Task<ActionResult> UploadImage([FromRoute]string Id, [FromForm]IFormFile file)
{
//Upload image logic
}
本地此代码的工作方式与我们预期的一样。当我们将它放在 Azure 上时,我们会得到以下响应。
{"type":"https://tools.ietf.org/html/rfc7231#section-6.5.1","title":"Bad Request","status":400,"traceId":"|1587f1cc093cd640a1ece0a37a6b33b5.d408b19_"}
看起来我们不允许在 Azure 上以这种方式上传文件。但找不到任何方法来完成这项工作。
该项目是一个 .NET Core 2.2 MVC 项目,它在标准 Azure Web 应用程序上运行。
【问题讨论】:
-
由于您在控制器中,您是否尝试过访问
this.Request.Form.Files集合而不是将其作为参数获取? -
你上传的路径是什么?
-
这是
APIController,您是通过multipart/form-data帖子发送文件吗? -
这是一个 APIController,它作为 multipart/form-data 发送。最后,它被上传到 Blob 存储。在本地它仍然有效。现在检查@BercoviciAdrian 解决方案以使用 this.Request.Form.Files 而不是将其作为参数
-
您可以使用给定的 traceId 访问日志消息吗?
标签: c# azure asp.net-core .net-core