Отправить POST запрос с JSON телом при помощи WebClient (C#)

Если я правильно понимаю, то WebClient высокоуровневый, даже выше чем HttpClient.

Я пытаюсь с помощью него отправить POST-запрос, который в теле содержит данные в формате JSON. В ответ должен придти бинарный файл, который необходимо сохранить на файловую систему:

using (var webClient = new WebClient())
{
    webClient.Headers.Add("Content-Type", "application/json");
    var uri = new Uri("http://...");
    var values = new NameValueCollection
    {
        { "property1Name", "property1Value" },
        { "property2Name", "property2Value" },
    };

    var responseBytes = webClient.UploadValues(uri, values);
}

Но при выполнение данного кода выскакивает WebException: Content-Type cannot be changed for current petition.

Leave a Reply

Your email address will not be published. Required fields are marked *