初探ASP.NET Web API

定义:
ASP.NET Web API is a framework that makes it easy to build HTTP services that reach a broad range of clients, including browsers and mobile devices. ASP.NET Web API is an ideal platform for building RESTful applications on the .NET Framework.

意思是,ASP.NET Web API是一个框架,可以轻松构建HTTP服务,覆盖广泛的客户端,包括浏览器和移动设备。 ASP.NET Web API是在.NET Framework上构建RESTful应用程序的理想平台。

那么RESTful又是什么?
简单的解释,RESTful属于一种设计风格,REST中的GET,POST,PUT DELETE来进行数据的增删改查,如果开发人员的应用程序符合RESTful原则,则它的服务称为"RESTful风格应用服务"。
get:获取
post:添加
put:修改
delete:删除
下面进行简单实验
步骤1:创建工程
1.创建一个ASP.NET Web API应用程序
在这里插入图片描述步骤2:代码关系分析
1.默认生成的文件夹。

public class ValuesController : ApiController
    {
        // GET api/values
        public IEnumerable<string> Get()
        {
            return new string[] { "value1", "value2" };
        }

        // GET api/values/5
        public string Get(int id)
        {
            return "value";
        }

        // POST api/values
        public void Post([FromBody]string value)
        {
        }

        // PUT api/values/5
        public void Put(int id, [FromBody]string value)
        {
        }

        // DELETE api/values/5
        public void Delete(int id)
        {
        }
    }

2.添加实验数据

public class ValuesController : ApiController
    {
        // Set mock data
        List<string> mockDataList = new List<string>()
        {
            "Product A","Product B","Product C","Product D","Product E"
        };

        // GET api/values
        public IEnumerable<string> Get()
        {
            return mockDataList;
        }

        // GET api/values/5
        public string Get(int id)
        {
            return mockDataList[id];
        }

        // POST api/values
        public void Post([FromBody]string value)
        {
            mockDataList.Add(value);
        }

        // PUT api/values/5
        public void Put(int id, [FromBody]string value)
        {
            mockDataList[id] = value;
        }

        // DELETE api/values/5
        public void Delete(int id)
        {
            mockDataList.RemoveAt(id);
        }
    }

web api的用途
强调两个关键点,即可以对接各种客户端(浏览器,移动设备),构建http服务的框架。
web api在.net 架构中的位置Web API最重要的是可以构建面向各种客户端的服务。另外与WCF REST Service不同在于,Web API利用Http协议的各个方面来表达服。务。
**web api 应用场景原理补充
1.HTTP
超文本传输协议 (HTTP-Hypertext transfer protocol) 是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。
 HTTP协议有下面三个基本特点:
 简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。
灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
无状态:无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。
相对于Web API来说,HTTP不只是为了生成Web页面,它也是一个强大的平台建设公开服务和数据的API。HTTP是简单、 灵活和无处不在,因此几乎任何平台都可以有一个HTTP库,因此,HTTP服务可以到达范围广泛的客户端,包括浏览器、移动设备和传统的桌面应用程序。
2.RESTful
RESTful架构概念是Fielding提出的,Fielding这号人物就是上面HTTP协议的主要设计者之一。我们先看下RESTful这个词,ful是跟在名词之后,表示程度,什么什么的,例如helpful乐于助人的,因此我们可以看出符合REST的架构就可以称为RESTful,接着我们看下REST,全称为“Representational State Transfer”,意为“表现层状态转化”。
客户端通过四个HTTP动词(PUT、GET、POST和DELETE),对服务器端资源进行操作,实现"表现层状态转化"。

应用连接:https://www.cnblogs.com/mejoy/p/6402821.html
应用连接:https://www.cnblogs.com/guyun/p/4589115.html

猜你喜欢

转载自blog.csdn.net/xie__jin__cheng/article/details/89468567