上图左边两个demo都可以直接获取ORDER类。(GET方法)
//Get调用WebApi方法1,可以直接调上图左侧两个demo,返回值string或ORDER类
HttpClient myHttpClient = new HttpClient();
//提交当前地址的webapi
string url = "http://localhost:8082/";
myHttpClient.BaseAddress = new Uri(url);
HttpResponseMessage response1 = myHttpClient.GetAsync("api/Service/Demo").Result;
ORDER order = null;
//GET提交 返回class
if (response1.IsSuccessStatusCode)
{
string aaaa = response1.Content.ReadAsStringAsync().Result;
order = response1.Content.ReadAsAsync<ORDER>().Result;
}
//Get调用WebApi方法2,可以直接调上图左侧两个demo,返回值string
string url = "http://localhost:8082/api/Service/Demo";
Encoding encoding = Encoding.UTF8;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "GET";
request.Accept = "text/html, application/xhtml+xml, */*";
request.ContentType = "application/json";
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{
string str = reader.ReadToEnd();
JObject jo = (JObject)JsonConvert.DeserializeObject(str);//将字符串反序列化成jobject对象
}
//POST调用WebApi
string ss = HttpPost("http://localhost:8082/api/Service/CreateAssignments", "{ \"TokenTime\": '" + DateTime.Now + "',\"TypeID\":\"1\"}");
public static string HttpPost(string url, string body)
{
Encoding encoding = Encoding.UTF8;
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";
request.Accept = "text/html, application/xhtml+xml, */*";
request.ContentType = "application/json";
request.Headers.Add("Token", "123");
byte[] buffer = encoding.GetBytes(body);
request.ContentLength = buffer.Length;
request.GetRequestStream().Write(buffer, 0, buffer.Length);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{
return reader.ReadToEnd();
}
}