Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengendalikan Muat Naik Fail dalam API Web ASP.NET Tanpa Storan Cakera?
Menggunakan HttpClient untuk mengendalikan muat naik fail dalam API Web ASP.NET
Mengendalikan muat naik fail ialah keperluan biasa apabila membangunkan perkhidmatan RESTful menggunakan API Web ASP.NET. Artikel ini meneroka cara menggunakan rangka kerja API Web untuk menerima imej atau fail yang DIPOS oleh aplikasi klien.
Kod asal menggunakan parameter HttpPostedFile
, pendekatan ini memerlukan lokasi fizikal pada pelayan untuk menyimpan fail yang dimuat naik. Walau bagaimanapun, artikel ini menerangkan alternatif yang menyimpan segala-galanya dalam ingatan tanpa menulis kepada sistem fail.
Kod yang dikemas kini menggunakan MultipartMemoryStreamProvider
untuk membaca data borang berbilang bahagian untuk permintaan POST. Ia berulang ke atas kandungan fail, mengakses nama fail dan data binarinya. Pendekatan ini membolehkan pemprosesan fail yang dimuat naik tanpa memerlukan storan sistem fail.
Berikut ialah kod yang diubah suai:
<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>
Penyelesaian ini menyediakan cara yang lebih fleksibel dan cekap untuk mengendalikan muat naik fail dalam perkhidmatan API Web, mengelakkan keperluan untuk penyimpanan sistem fail dan membolehkan pemprosesan kandungan yang dimuat naik dengan lancar.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Muat Naik Fail dalam API Web ASP.NET Tanpa Storan Cakera?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!