在 ASP.NET Web API 中透過 POST 上傳檔案
ASP.NET Web API 中的檔案上傳需要一種客製化的方法。為了接收和處理 POST 的圖片或文件,務必改善目前的實作。
您問題中提供的程式碼片段 ProfileImagePost
嘗試接收一個 HttpPostedFile
參數。但是,這種方法在 ASP.NET Web API 中可能無法如預期運作。
相反,請使用以下模式來成功處理文件上傳:
<code class="language-csharp">[HttpPost("api/upload")] public async Task<IHttpActionResult> Upload() { if (!Request.Content.IsMimeMultipartContent()) throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType); var provider = new MultipartMemoryStreamProvider(); await Request.Content.ReadAsMultipartAsync(provider); foreach (var file in provider.Contents) { var filename = file.Headers.ContentDisposition.FileName.Trim('"'); var buffer = await file.ReadAsByteArrayAsync(); // 使用文件名和二进制数据执行任何操作。 } return Ok(); }</code>
此修改後的程式碼片段可確保您可以透過將傳入請求視為多部分資料並提取檔案名稱和檔案內容來接收和處理 ASP.NET Web API 中的檔案上傳。
以上是如何在 ASP.NET Web API 中透過 POST 處理檔案上傳?的詳細內容。更多資訊請關注PHP中文網其他相關文章!