首页 > 代码库 > WebApi学习笔记03:使用webapi模板--API帮助--fiddler工具使用--增删改查方法
WebApi学习笔记03:使用webapi模板--API帮助--fiddler工具使用--增删改查方法
1.Web项目
1.1概述
前面两个例子,使用的空web模板,它没有引入关于UI框架(Bootstrap,追求代码洁癖的人,也许不会喜欢它),更没有安装API帮助,
这次我们直接选webapi模板项目,但不勾选身份验证……
1.2创建项目
注:关于身份验证,后面单独例子再说。
这样创建的项目,直接是demo了,可以运行了。(就不截图了)
1.3修改控制器
打开Controllers\ValuesController.cs,修改为:
using System.Collections.Generic;using System.Web.Http;namespace WebApi03.Controllers{ public class ValuesController : ApiController { //模拟数据 static List<string> data = http://www.mamicode.com/InitList();"value1", "value2", "value3" }; return list; } // GET api/values /// <summary> /// 查询所有 /// </summary> /// <returns>字符串集合</returns> public IEnumerable<string> Get() { return data; } // GET api/values/5 /// <summary> /// 根据id查询 /// </summary> /// <param name="id">索引id</param> /// <returns>单个字符串</returns> public string Get(int id) { return data[id]; } // POST api/values /// <summary> /// 添加一个字符串 /// </summary> /// <param name="value">字符串</param> public void Post([FromBody]string value) { data.Add(value); } // PUT api/values/5 /// <summary> /// 根据id修改 /// </summary> /// <param name="id">索引id</param> /// <param name="value">字符串</param> public void Put(int id, [FromBody]string value) { data[id] = value; } // DELETE api/values/5 /// <summary> /// 根据id删除 /// </summary> /// <param name="id">索引id</param> public void Delete(int id) { data.RemoveAt(id); } }}
1.4浏览帮助API
先不测试控制器的Action方法是否OK?先看帮助页:
从上图看到“Description”内容都是“No……”。该如何让它显示Action方法的(/// <summary>方法描述)说明文字?
其实模板代码已经帮我写好了方法,我们只需要先设置生成xml文档即可。
右键当前项目,打开“属性”窗户(勾选):
然后再修改Areas\App_Start\HelpPageConfig.cs中代码(把这行代码注释去掉,并注意路径即可)
再查看帮助页:
当然在App_Start\下也生成WebApi03.XML。这里生成完毕后,我们暂时再去掉勾选:
1.5查询所有
这里开始fiddler工具了。先把web程序运行起来……
执行GET请求:
状态码Result 200表示成功,查看结果:
1.6查询单个
执行GET请求:
如果单个不能看JSON结果(原因看报文请求类型),也是可以看Raw:
注:字符串集合索引是从0开始的。
1.7添加一个
执行POST请求:
状态码是204(其实应该为201,后面我们再介绍)表示成功。
再使用前面查询所有方式,看有没有添加成功???
注:这个结果是缓存里,所以可以查到。
1.8修改一个
执行PUT方法:
再查询所有:
1.9删除一个
执行DELETE方法:
再查看所有:
2.小结
本例希望你掌握生成API帮助描述文档和fiddler几个常用的CRUD请求方法调试。
但代码会也有一些问题,比如如果查询的id不存在,会报错的,而且添加,删除,修改的状态成功时都是204,失败时又是什么?
WebApi学习笔记03:使用webapi模板--API帮助--fiddler工具使用--增删改查方法