


Bagaimana untuk Menerima Permintaan POST Fail dengan Benar dalam API Web ASP.NET?
Jan 24, 2025 am 01:12 AMMengendalikan Muat Naik Fail dalam API Web ASP.NET
Panduan ini menunjukkan cara menerima fail POST dengan betul, seperti imej, dalam API Web ASP.NET. Contoh di bawah mengelak daripada menyimpan fail terus ke sistem fail pelayan, sebaliknya menyimpan data fail dalam ingatan.
Kaedah Muat Naik Fail yang Diperbaiki:
Coretan kod berikut menggunakan MultipartMemoryStreamProvider
untuk mengendalikan muat naik fail dengan cekap dalam API Web.
[HttpPost("api/upload")] public async Task<IHttpActionResult> Upload() { // Check if the request content is multipart if (!Request.Content.IsMimeMultipartContent()) { return BadRequest("Unsupported media type. Please use multipart/form-data."); } var provider = new MultipartMemoryStreamProvider(); await Request.Content.ReadAsMultipartAsync(provider); foreach (var fileContent in provider.Contents) { // Extract filename, removing surrounding quotes var filename = fileContent.Headers.ContentDisposition.FileName.Trim('"'); // Validate file type (example: only allow images) string[] allowedExtensions = { ".jpg", ".jpeg", ".gif", ".bmp", ".png" }; if (!allowedExtensions.Any(ext => filename.EndsWith(ext, StringComparison.OrdinalIgnoreCase))) { return BadRequest("Invalid file type."); } // Read file data into a byte array var buffer = await fileContent.ReadAsByteArrayAsync(); // Process the file data (e.g., save to database, image manipulation) // ... your file processing logic here ... } return Ok(); }
Kaedah ini menyemak kandungan berbilang bahagian, mengekstrak nama fail, mengesahkan jenis fail, membaca data fail ke dalam tatasusunan bait, dan kemudian membenarkan pemprosesan tersuai buffer
(data binari fail). Pengendalian ralat dipertingkatkan dengan mengembalikan kod status HTTP yang sesuai. Ingat untuk menambah pengendalian ralat dan langkah keselamatan yang diperlukan untuk persekitaran pengeluaran.
Atas ialah kandungan terperinci Bagaimana untuk Menerima Permintaan POST Fail dengan Benar dalam API Web ASP.NET?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Langkah Format Fungsi Fungsi C Langkah Penukaran Kes

Apakah jenis nilai yang dikembalikan oleh fungsi bahasa C? Apa yang menentukan nilai pulangan?

Gulc: Perpustakaan C dibina dari awal

Apakah definisi dan peraturan panggilan fungsi bahasa C dan apakah itu

Bagaimana Perpustakaan Templat St Standard (STL) berfungsi?

Penggunaan dan perkongsian frasa yang berbeza

Di manakah nilai pulangan fungsi bahasa C yang disimpan dalam ingatan?

Bagaimanakah saya menggunakan algoritma dari STL (jenis, mencari, mengubah, dll) dengan cekap?
