ankitsrist Ответов: 1

Как для разбора JSON-данных в системе.нет.запросы WebRequest откликов


Привет,
Я пытаюсь вызвать API, который возвращает данные в формате JSON, которые мне нужно разобрать. Как это сделать в системе.Нет.Запросы WebRequest..
Ниже приведен мой код

ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
           
            request = WebRequest.Create("https://IPAaddress/api/admin/configuration/v1/conference/1/");
             
            request.Credentials = new NetworkCredential("username", "password");
            // Create POST data and convert it to a byte array.
            request.Method = "GET";          
           
                    // Set the ContentType property of the WebRequest.
            request.ContentType = "application/json; charset=utf-8";          
   

            WebResponse response = request.GetResponse();
            // Display the status.
            Console.WriteLine(((HttpWebResponse)response).StatusDescription);
            // Get the stream containing content returned by the server.
            dataStream = response.GetResponseStream();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader(dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd();
            
            // Display the content.
            Console.WriteLine(responseFromServer);
            // Clean up the streams.
            reader.Close();
            dataStream.Close();
            response.Close();

Заранее спасибо

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

ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
           
            request = WebRequest.Create("https://IPAaddress/api/admin/configuration/v1/conference/1/");
             
            request.Credentials = new NetworkCredential("username", "password");
            // Create POST data and convert it to a byte array.
            request.Method = "GET";          
           
                    // Set the ContentType property of the WebRequest.
            request.ContentType = "application/json; charset=utf-8";          
   

            WebResponse response = request.GetResponse();
            // Display the status.
            Console.WriteLine(((HttpWebResponse)response).StatusDescription);
            // Get the stream containing content returned by the server.
            dataStream = response.GetResponseStream();
            // Open the stream using a StreamReader for easy access.
            StreamReader reader = new StreamReader(dataStream);
            // Read the content.
            string responseFromServer = reader.ReadToEnd();
            
            // Display the content.
            Console.WriteLine(responseFromServer);
            // Clean up the streams.
            reader.Close();
            dataStream.Close();
            response.Close();

F-ES Sitecore

Google "parse json c#", и вы найдете много примеров того, как это сделать. Пожалуйста, сделайте фундаментальное исследование, прежде чем задавать вопрос.

Karthik_Mahalingam

образец ответа для JSON-данные

ankitsrist

Вот он Картик
{
"псевдонимы": [
{
"псевдоним": "тест",
"конференция": "/ api / admin/configuration/v1/conference/1/",
"описание": "тест",
"id": 1
}
],
"allow_guests": правда,
"automatic_participants": [],
"call_type": "видео",
"описание": "",
"force_presenter_into_main": ложные,
"guest_pin": "",
"guest_view": нуль,
"host_view": "one_main_seven_pips",
"id": 1,
"ivr_theme": нуль,
"match_string": нуль,
"max_callrate_in": нуль,
"max_callrate_out": нуль,
"mssip_proxy": нуль,
"mute_all_guests": ложные,
"имя": "VMR_1",
"participant_limit": нуль,
"пин-код": "12345",
"replace_string": "",
"resource_uri": "/по API/администратор/настройки/В1/конференция/1/",
"service_type": "конференция",
"sync_tag": "",
"system_location": нуль,
"метка": ""
}

Karthik_Mahalingam

хорошо, каков ваш необходимый выход

ankitsrist

Это дает мой необходимый вывод json, но на самом деле я хочу использовать поле json для отображения на моей странице aspx соответственно, например. Conferencelbl. text= "name"(поле возвращаемого json), могу ли я сделать что-то подобное. Спасибо

1 Ответов

Рейтинг:
1

Sunil Thakur

Создайте модель и проанализируйте объект json для этой модели с помощью newtonsoft.json или System.Web.Script.Сериализация.

например:
Модель

public class MyModel
  {
      public string user_id { get; set; }
      public string name { get; set; }
      public string given_name { get; set; }
      public string email { get; set; }    
  }


и ваш ответ

WebResponse response = request.GetResponse();
           // Display the status.
           Console.WriteLine(((HttpWebResponse)response).StatusDescription);
           // Get the stream containing content returned by the server.
           dataStream = response.GetResponseStream();
           // Open the stream using a StreamReader for easy access.
           StreamReader reader = new StreamReader(dataStream);
           // Read the content.
           string responseFromServer = reader.ReadToEnd();
// im using javascriptserializer from the System.Web.Script.Serialization namespace
          JavaScriptSerializer j = new JavaScriptSerializer();
          MyModel model= j.Deserialize<MyModel>(responseFromServer .Content);


Надеюсь, это поможет..


ankitsrist

спасибо Сунил, сделав небольшое изменение в вашем коде, моя проблема была решена
строка responseFromServer = reader. ReadToEnd();
JavaScriptSerializer js = новый JavaScriptSerializer();
динамический obj = JS. Deserialize