haythamsoft Ответов: 1

Как сделать HTTP post запрос в c#.net использование данных формы


Неожиданный символ, встречающийся при разборе значения: H. Path", строка 0, позиция 0 Newtonsoft.Json.JsonReaderException

Что я уже пробовал:

строка заголовок = элемент textbox1.Текст;
описание строки = TextBox2.Text;
строка unitType = ddlUnitType.SelectedValue;
строка RequestType = ddlRequestType.SelectedValue;
строка pricefrom = txtpricefrom.Текст;
строка priceto = txtpriceto.Текст;
строка areafrom = txtAreafrom.Текст;
строка areato = txtAreato.Текст;
string Send_Data = строка.Format("request[title]={0}&request[description]={1}&request[type]={2}&request[request_type]={3}&request[price_from]={4}&request[price_to]={5}&request[area_from]={6}&request[area_to]={7}", название, описание,unitType,RequestType,pricefrom,priceto,areafrom,areato);

строка url = "https://test.com/api/saveRequest?" + Send_Data;
строка Requestbody = "";

HttpWebRequest request = (HttpWebRequest)WebRequest.Создать(url);
запрос.Метод = "сообщение";

запрос.Headers.Add("токен", "222222");


Система.Текст.Utf8encoding дополнительно кодировка = новая система.Текст.Utf8encoding дополнительно();
Byte[] byteArray = кодировка.GetBytes(Requestbody);
запрос.ContentLength = byteArray.Длина;
// запрос.ContentType = @"приложение/форма-данные";
запрос.ContentType = @"application/json";
Servicepointmanager и.SecurityProtocol = (SecurityProtocolType)3072;



использование (Stream data = request.GetRequestStream())
{
данные.Напишите(byteArray, 0, byteArray.Длина);
}

IAsyncResult asyncResult = запрос.BeginGetResponse(null, null);
параметр asyncResult.AsyncWaitHandle.Метод waitone();

использование (WebResponse webResponse = запрос.Метода endgetresponse(asyncresult, к))
{
используя (что streamreader РД = новый поток streamreader(метода webresponse.GetResponseStream()))
{
результат ВАР = РД.ReadToEnd();


динамический _json = JsonConvert.DeserializeObject(результат);
dynamic _result = новый ExpandoObject();
var all_data = _json["статус"];

если (all_data == "правда")
{
lblmessege.Text = "Сохранено";

}

еще
{
lblmessege.Text = "Не Сохранено";
}

MadMyche

Пытливые умы хотят знать: что на самом деле возвращается в этом веб-ответе?

1 Ответов

Рейтинг:
2

#realJSOP

Это не вопрос, но.....

Чтобы найти свою проблему, поставьте точку останова в этой строке:

dynamic _json = JsonConvert.DeserializeObject(result);

И проверьте переменную result Пройдите через код и проверьте все связанные объекты. Я *гарантирую*, что вы узнаете, что не так с вашим кодом.

Изучение того, как использовать имеющиеся в вашем распоряжении инструменты, поможет вам научиться быть программистом.