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 中国語 Web サイトの他の関連記事を参照してください。