MVC4提供了一种从HTTP请求返回序列化对象的非常简单的方法。从MVC4应用程序调用REST或其他JSON / XML API的最佳方法是什么?我可以构造一个HTTP请求,发送它,然后反序列化结果,但我希望更简单的东西。我的应用程序在多个服务器上运行,一个服务器需要通过Web API与另一个服务器通信。因此,两个服务器都具有相同的类定义。我希望有一些相当透明的方法可以让MVC反序列化,就像序列化内容一样干净。
答案 0 :(得分:1)
这是我如何从WPF应用程序调用MVC4 WebAPI的示例。您应该能够根据您的需要进行调整。希望这会有所帮助...
HttpClient client = new HttpClient();
client.BaseAddress = new Uri("http://192.200.1.3:9594/");
// Add an Accept header for JSON format.
client.DefaultRequestHeaders.Accept.Add(
new MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = await client.GetAsync("EmployeeTest/TestApi");
if (response.IsSuccessStatusCode) {
var employee = response.Content.ReadAsAsync<Employee>().Result;
tbName.Text = employee.Name;
tbPhone.Text = employee.Phone;
}