2015-04-08 48 views
1

我想要做的事:如何使用ASP.NET MVC進行HTTP調用?

我想實踐使HTTP調用(......如果這是它叫什麼)從一個簡單的ASP.NET MVC的Web應用程序。爲此,我試圖從OpenWeatherMap獲取天氣詳情。你可以這樣做:

  • 以下參數添加到GET請求:APPID = APIKEY
    • 例子:api.openweathermap.org/data/2.5/forecast/city?id= 524901 & APPID = 1111111111

我的理解,從我的學習:

  • 控制器是一個作出上述HTTP調用。

我的問題:

  • 我怎麼居然提出,HTTP GET請求,在ASP.NET MVC?
+0

編輯:我知道有很多方法,那麼上手是什麼樣的「簡單,輕鬆」方式? – daCoda

+1

如果你的意思是你想從你的代碼中調用你的服務器端應用程序的HTTP調用,那麼請注意,這實際上與MVC沒有任何關係。任何.NET代碼都會使用像HttpClient這樣的對象來發出HTTP請求並接收響應。 MVC是您的代碼的前端應用程序主機,但您正在討論可從任何應用程序主機調用的後端.NET代碼。 – David

回答

5

使用System.Net.Http.HttpClient

您可以使用類似下面做從網站的一些基本閱讀:

using (var client = new HttpClient()) 
{ 
    var uri = new Uri("http://www.google.com/"); 

    var response = await client.GetAsync(uri); 

    string textResult = await response.Content.ReadAsStringAsync(); 
} 

您可能希望確保測試response.IsSuccessStatusCode(檢查的HTTP 200結果),以確保結果是什麼你希望在分析它之前。

+0

乾杯。 對我來說,主要的「牛肉」是這些行: var response = await client.GetAsync(「http://www.google.com」); string content = await response.Content.ReadAsStringAsync(); Console.WriteLine(content); – daCoda