• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#webapi简单学习

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

创建WebApi项目:

在VS工具中创建一个ASP.NET Web应用程序

 

选择Webapi

一个webapi项目就创建好了

这里简单的写一个post和get两种请求的方法,由于post请求参数需要参数体的形式,一般用json作为参数,这里简单创建一个实体类,放上参数,我这里就放一个,可根据项目自己设置相应的参数

注意的是,post请求的时候,json里的键值对 键的名字要和实体中的一样,过来实体接收参数会自动将json值拆分到各个对应的名字上

 

然后先写post方法,记得要写请求方式[HttpPost]注意这个参数的写法

[HttpPost]
public string demo([FromBody]Contact name) 
{
     string nn = name.Name;
     string result = string.Empty;
     result = "您的参数是:" + nn;
     return result;
}

 

Get方法可以直接获取参数,注意[HttpGet]

[HttpGet]
public string wxs(string name)
{
    string result = string.Empty;
    result = "{Name:\"" + name + "\"}";
    return result;
}

 

一个简单的webapi就写完了,现在试试请求这个webapi,我这里用C#控制台应用程序写一个简单的调用

为了方便测试,我直接将这个webapi发布到了本机的IIS上

Post请求:

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {

            string ss = HttpPost("http://localhost:8097/api/Contact/demo", "{\"Name\":\"zhangsan\"}");

            
            Console.WriteLine(ss);



            Console.ReadLine();
        }






        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";

            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();
            }

        }
    }
}

 

Get请求: 

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {


            string ss = HttpGet("http://localhost:8097/api/Contact/wxs?name=zhangsan");

            Console.WriteLine(ss);



            Console.ReadLine();
        }


        public static string HttpGet(string url)
        {
            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))
            {
                return reader.ReadToEnd();
            }
        }


    }
}

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap