asp.net mvc+httpclient+asp.net mvc api入门篇

第一步:创建一个ASP.NET MVC API项目

第二步:在api项目里面创建一个类

public class Student
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Pass { get; set; }
    }

第三步:webapi可以返回json和xml这两种数据

  举一个简单的例子:api中返回一个list列表:可以返回

也可以返回这种格式:

前台接受完请求之后要进行反序列化:

现在做一个get的操作

            HttpClient client = new HttpClient();
            Uri uri = new Uri("http://localhost:64279/");
            client.BaseAddress = uri;
            //添加请求的头文件
            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            //发送请求并接受返回的值
            HttpResponseMessage message = client.GetAsync("api/Values/F").Result;
            string a=  message.Content.ReadAsStringAsync().Result;
            var ms = JsonConvert.DeserializeObject<string>(a);

现在做一个发送post请求的操作

HttpClient client = new HttpClient();
            Uri uri = new Uri("http://localhost:64279/");
            client.BaseAddress = uri;
            client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
            //获取请求相应的消息,包含状态和代码
            HttpContent content = new FormUrlEncodedContent(
                new[]{
                     new KeyValuePair<string,string>("ID","1"),
                     new KeyValuePair<string, string>("Name","fff"),
                     new KeyValuePair<string, string>("Pass","123")
                     
                });
            HttpResponseMessage result = client.PostAsync("api/values/DD",content).Result;
            var msg = result.Content.ReadAsStringAsync().Result;
            //反序列化
            string ss = JsonConvert.DeserializeObject<string>(msg);

 刚开始写博客,思路有些不太清晰,如果有描述不明白的地方,大家可以加我的QQ详聊:168104910

原文地址:https://www.cnblogs.com/pandorabox/p/10147359.html