首頁 > 後端開發 > C++ > 如何使用 C# 透過 HTTP POST 上傳檔案?

如何使用 C# 透過 HTTP POST 上傳檔案?

Susan Sarandon
發布: 2025-01-11 19:21:42
原創
761 人瀏覽過

How to Upload Files via HTTP POST using C#?

C# HTTP POST 檔案上傳:綜合指南

本指南詳細介紹如何使用 C# 透過 HTTP POST 請求將檔案上傳到遠端伺服器。

1。建構 HTTP 請求

首先,建立一個指定目標 URL 的 HttpWebRequest 物件。 將 Method 屬性設為“POST”,並適當地定義 ContentTypeContentLength

2。身份驗證和連接參數

使用必要的使用者憑證來設定請求的 Credentials 屬性。透過將 PreAuthenticate 設定為 true 來啟用預先驗證。

3。建立多部分錶單資料

對於 C# 4.5 及更高版本,利用 MultipartFormDataContent 類別建立多部分錶單資料。 分別使用 StringContentStreamContent 新增字串和檔案資料。

4。發送請求並處理回應

使用req.GetResponse()發送請求並管理任何潛在的異常。 相應地處理伺服器的回應。

5。程式碼範例

以下程式碼示範了這個過程:

<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>
登入後複製

以上是如何使用 C# 透過 HTTP POST 上傳檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板