[英]Consume REST service in MVC 6
我需要幫助。 我正在創建一個MVC 6應用程序,並堅持我應該從REST服務中使用JSON的部分。 我找不到將項目連接到服務然后使用它的方法。
沒有辦法像以前的版本一樣添加服務引用,我找不到ASP.NET 5文檔,其中規定了在MVC 6中使用第三方服務的策略。 有人有同樣的問題嗎?
要在MVC中從RESTful服務獲取JSON,您只需對服務API進行http調用,並使用包含json屬性的模型解析響應。 你可以在這里閱讀更多相關信息: http : //bitoftech.net/2014/11/18/getting-started-asp-net-5-mvc-6-web-api-entity-framework-7/
一個例子看起來像這樣:
public YourModel MakeRequest(string requestUrl)
{
try
{
HttpWebRequest request = WebRequest.Create(requestUrl) as HttpWebRequest;
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
if (response.StatusCode != HttpStatusCode.OK)
{
throw new Exception(String.Format("Server error (HTTP {0}: {1}).", response.StatusCode, response.StatusDescription));
}
JavaScriptSerializer serializer = new JavaScriptSerializer();
var responseObject = serializer.Deserialize<YourModel>(response);
return responseObject;
}
}
catch (Exception e)
{
// catch exception and log it
return null;
}
}
ASP.NET中的REST服務沒有“添加服務引用”功能(就像WSDL描述的那樣)。 從來沒有。 您可以使用javascript直接從瀏覽器中使用該服務。 不同之處在於您需要使用任何http客戶端在.NET中編寫類似的代碼(HttpClient或RestSharp是最受歡迎的)。
有一些努力使REST服務更容易使用。 Swagger是我用來描述我的API的工具。 它還允許為各種語言生成客戶端代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.