【01】浅谈HTTP在WebApi开发中的运用
【03】详解WebApi参数的通报
阅读目录
1.1
5
一 概述
一般地,我们在研究一个问题时,通例的思路是为该问题建模;我们在研究相似问题时,通例思路是找出这些问题的共性和异性。基于该思路,我们如何研究WebApi参数通报问题呢?
首先,从参数自己来说,种类较为多(如int,double,float,string,array,Object等),且有些类型较为庞大(如值类型和引用类型的机制等);
其次,从基于WebApi的Http请求要领来说,种类多且不尽不异(如Get,post,Delete,put,head等),在上一篇文章 :【WebApi系列】浅谈HTTP在WebApi开发中的运用 中,我们简要描述了Http请求的20个要领;
..........
如此庞大且不尽不异,关于WebApi参数通报,我们该选择什么作为切入点来研究呢?基于我们上面提到的研究思路,我们想到了.NET Framework框架,那么,我们来看看基于.NET Framework框架的的WebApi
模板是怎样的呢?
请按图中法式操纵
我们来看看Values控制器是怎样的
1 public class ValuesController : ApiController 2 { 3 // GET api/values 4 public IEnumerable<string> Get() 5 { 6 return new string[] { "value1", "value2" }; 7 } 8 9 // GET api/values/5 10 public string Get(int id) 11 { 12 return "value"; 13 } 14 15 // POST api/values 16 public void Post([FromBody]string value) 17 { 18 } 19 20 // PUT api/values/5 21 public void Put(int id, [FromBody]string value) 22 { 23 } 24 25 // DELETE api/values/5 26 public void Delete(int id) 27 { 28 } 29 }
从Values控制器,我们不难得出如下几个结论:
(1)WebApi通例要领为四个:Get,Post,Put和Delete;
(2)四种要领的参数可归结为两大类:url通报(Request-url)和Body(Request-body)通报;
(3)基于(2),我们将四种要领的参数通报归为两大类,而这两大类又集中在Get和Post中浮现了(Put是Get和Post的组合,Delete与Get类似);