PUT-запрос, как?

  • Автор темы Автор темы xEngine33
  • Дата начала Дата начала

xEngine33

Пользователь
Регистрация
25.03.2016
Сообщения
71
Реакции
15
Баллы
8
Всем доброе утро, помогите разобраться как делается PUT-запрос. Нашел на форуме только этот код:


Код:
Развернуть Свернуть Копировать
WebCliеnt client = new WebClient();
client.Headers[HttpRequеstHeader.ContentType] = "application/json";
string str = client.UploadString("https://www.zennolab.com", "PUT", "тут json");

В логе ошибка: Ошибка в действии "CS1002", "Ожидалось ;" [Строка: -9; Столбец: 17]

Как довести код до ума, может у кого есть готовое решение, спасибо. :bc::bt:
 
Не нашел перегрузку для метода UploadString который бы принимал 3 string.
Есть вот это https://msdn.microsoft.com/ru-ru/library/ms144237(v=vs.110).aspx

Тогда делаем так
Код:
Развернуть Свернуть Копировать
string str = client.UploadString(new Uri("https://www.zennolab.com"), "PUT", "тут json");
 
  • Оценить
Реакции: xEngine33
Получилось без ошибок отправить у кого-нибудь?
 
Учтите, что отправка будет происходить напрямую, без использования прокси.
Если необходимо, есть возможность вставить в данный код только HTTP/HTTPS прокси.
Если требуется поддержка протокола SOCKS4/5, то нужно добавить дополнительный код для реализации данного протокола.
Код:
Развернуть Свернуть Копировать
try
{
    string url = "https://www.zennolab.com";
    string json = "{'test': 'test'}";
    byte[] data = Encoding.ASCII.GetBytes(json);
    System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
    request.Method = "PUT";
    request.ContentType = "text/plain";
    request.ContentLength = data.Length;
    request.KeepAlive = true;
    Stream requestStream = request.GetRequestStream();
    requestStream.Write(data, 0, data.Length);
    requestStream.Close();
    System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
    string result = response.StatusCode.ToString();
    return result;
}
catch (Exception e)
{
    return "ERROR:" + e.Message;
}
 
Учтите, что отправка будет происходить напрямую, без использования прокси.
Если необходимо, есть возможность вставить в данный код только HTTP/HTTPS прокси.
Если требуется поддержка протокола SOCKS4/5, то нужно добавить дополнительный код для реализации данного протокола.
Код:
Развернуть Свернуть Копировать
try
{
    string url = "https://www.zennolab.com";
    string json = "{'test': 'test'}";
    byte[] data = Encoding.ASCII.GetBytes(json);
    System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
    request.Method = "PUT";
    request.ContentType = "text/plain";
    request.ContentLength = data.Length;
    request.KeepAlive = true;
    Stream requestStream = request.GetRequestStream();
    requestStream.Write(data, 0, data.Length);
    requestStream.Close();
    System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
    string result = response.StatusCode.ToString();
    return result;
}
catch (Exception e)
{
    return "ERROR:" + e.Message;
}

Спасибо огромное. :)
 
Не допру чёто ... есть PUT запрос и ссылка на json мне надо вписать туда данные которые нужно изменить .. как это сделать??
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)