Загрузите файл с помощью HttpWebRequest в C#

Чтобы загрузить файл с помощью HttpWebRequestв C#, вы можете использовать несколько методов. Вот несколько примеров:

Метод 1: использование HttpWebRequestс Stream

string url = "http://example.com/upload";
string filePath = "path/to/file.jpg";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
    using (Stream requestStream = request.GetRequestStream())
    {
        fileStream.CopyTo(requestStream);
    }
}
HttpWebResponse response = (HttpWebResponse)request.GetResponse();

Метод 2: использование HttpClient(доступно в.NET Framework 4.5+ и.NET Core)

string url = "http://example.com/upload";
string filePath = "path/to/file.jpg";
using (HttpClient client = new HttpClient())
{
    using (MultipartFormDataContent formData = new MultipartFormDataContent())
    {
        using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read))
        {
            formData.Add(new StreamContent(fileStream), "file", Path.GetFileName(filePath));
            HttpResponseMessage response = await client.PostAsync(url, formData);
            // Handle the response
        }
    }
}

Метод 3. Использование WebClient(более простой подход)

string url = "http://example.com/upload";
string filePath = "path/to/file.jpg";
using (WebClient client = new WebClient())
{
    client.UploadFile(url, filePath);
}

Обратите внимание, что во всех описанных выше методах вам необходимо заменить "http://example.com/upload"фактическим URL-адресом, по которому вы хотите загрузить файл. Кроме того, убедитесь, что у вас есть соответствующие разрешения и правильно обрабатываете исключения.