Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Muat Naik Fail melalui HTTP POST menggunakan C#?

Bagaimana untuk Muat Naik Fail melalui HTTP POST menggunakan C#?

Susan Sarandon
Susan Sarandonasal
2025-01-11 19:21:42819semak imbas

How to Upload Files via HTTP POST using C#?

Muat Naik Fail C# HTTP POST: Panduan Komprehensif

Panduan ini memperincikan cara menggunakan C# untuk memuat naik fail ke pelayan jauh melalui permintaan HTTP POST.

1. Membina Permintaan HTTP

Mula-mula, cipta objek HttpWebRequest yang menyatakan URL sasaran. Tetapkan sifat Method kepada "POST", dan takrifkan ContentType dan ContentLength dengan sewajarnya.

2. Parameter Pengesahan dan Sambungan

Konfigurasikan harta Credentials permintaan dengan kelayakan pengguna yang diperlukan. Dayakan pra-pengesahan dengan menetapkan PreAuthenticate kepada true.

3. Membina Data Borang Berbilang Bahagian

Untuk C# 4.5 dan lebih baru, manfaatkan kelas MultipartFormDataContent untuk mencipta data borang berbilang bahagian. Tambahkan kedua-dua rentetan dan data fail menggunakan StringContent dan StreamContent masing-masing.

4. Menghantar Permintaan dan Mengendalikan Respons

Hantar permintaan menggunakan req.GetResponse() dan uruskan sebarang kemungkinan pengecualian. Proseskan respons pelayan dengan sewajarnya.

5. Contoh Kod

Kod berikut menunjukkan proses:

<code class="language-csharp">HttpWebRequest req = WebRequest.Create(uri) as HttpWebRequest;
req.KeepAlive = false;
req.Method = "POST";
req.Credentials = new NetworkCredential(user.UserName, user.UserPassword);
req.PreAuthenticate = true;
req.ContentType = file.ContentType;
req.ContentLength = file.Length;

using (var formData = new MultipartFormDataContent())
{
    formData.Add(new StringContent(paramString), "param1", "param1");
    formData.Add(new StreamContent(paramFileStream), "file1", "file1");
    formData.Add(new ByteArrayContent(paramFileBytes), "file2", "file2");
    using (var client = new HttpClient())
    {
        var response = await client.PostAsync(uri, formData);
        // Process the response here...
    }
}</code>

Atas ialah kandungan terperinci Bagaimana untuk Muat Naik Fail melalui HTTP POST menggunakan C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn