2015-07-06 9 views
0

Я вызываю API-интерфейс Rest, используя C#. URL работает с браузером, но когда я называю это из C# исключение называетсяВызов REST Api с использованием C#

A first chance exception of type 'System.Net.Sockets.SocketException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 

Это мой код

public static void getInputFromTeam1() 
     { 
      HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://192.168.150.1:8090/api/storeLayout/kinectToRacks/42"); 
      request.Method = "GET"; 
      request.Accept = "application/json"; 


      try 
      { 
       WebResponse webResponse = request.GetResponse(); 
       using (Stream webStream = webResponse.GetResponseStream()) 
       { 
        if (webStream != null) 
        { 
         using (StreamReader responseReader = new StreamReader(webStream)) 
         { 
          string response = responseReader.ReadToEnd(); 
          Console.Out.WriteLine(response); 
         } 
        } 
       } 
      } 
      catch (Exception e) 
      { 
       Console.Out.WriteLine("-----------------"); 
       Console.Out.WriteLine(e.Message); 
      } 

     } 

Im новой для C# и отдыха Апи. Пожалуйста, помогите мне, я прочитал много ответов, но никто из них не работает. Пожалуйста, помогите мне поблагодарить вас.

+0

@CodeCaster Невозможно подключиться к удаленному серверу. Это сообщение catch –

+0

@CodeCaster Я не смог найти много на этом исключении –

+0

using (var httpClient = new HttpClient()) { httpClient.DefaultRequestHeaders.Accept.Clear(); httpClient.DefaultRequestHeaders.Accept.Add (новый MediaTypeWithQualityHeaderValue ("application/json")); var response = httpClient.GetAsync (url) .Result; string result = response.Content.ReadAsStringAsync(). Result.ToString(); результат возврата; } – Prashant

ответ

0

Я бы порекомендовал вам взглянуть на класс высокого уровня WebClient. Вы все равно должны обратить пристальное внимание на сообщение об исключении.

 var serviceRequest = new WebClient(); 
     string response = serviceRequest.DownloadString(new Uri(url)); 
+0

Необработанное исключение типа «System.Net.WebException» произошло в System.dll Дополнительная информация: Не удается подключиться к удаленному серверу @Justin –

-1

Вы можете использовать этот код.

  using (var client = new HttpClient()) 
      { 
       client.BaseAddress = new Uri("http://192.168.150.1:8090/"); 
       client.DefaultRequestHeaders.Accept.Clear(); 
       client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 

       HttpResponseMessage response = client.GetAsync("api/storeLayout/kinectToRacks/42").Result; 
       if (response.IsSuccessStatusCode) 
       { 
        var str = response.Content.ReadAsStringAsync(); 
       } 
      } 
+0

же исключение называется –

+0

я не думаю, что ответ wrong.You может проверить cors. –