WebApi入门
- 前言
- 一、 创建WebApi项目
- 二、创建实体
- 三、创建控制器
- 四、启动测试
- 总结

下午4点闲着无聊,想起群里昨天小李问到如何创建WebApi项目, 那利用摸鱼时间自学一下吧。打开度娘呗。
一、 创建WebApi项目
[ApiController] [Route("[controller]")] public class ContactController : ControllerBase { private static readonly Contact[] contacts = new Contact[] { new Contact(){ ID=1,Age=20,BirthDay=Convert.ToDateTime("1988-07-5"),Name="傲娇",Sex="男"}, new Contact(){ ID=1,Age=18,BirthDay=Convert.ToDateTime("1988-07-3"),Name="阿里斯",Sex="女"}, new Contact(){ ID=1,Age=1,BirthDay=Convert.ToDateTime("1988-07-26"),Name="网妹",Sex="女"}, new Contact(){ ID=1,Age=4,BirthDay=Convert.ToDateTime("1988-07-5"),Name="哈子",Sex="男"} }; private readonly ILogger<WeatherForecastController> _logger; public ContactController(ILogger<WeatherForecastController> logger) { _logger = logger; } [HttpGet] [Route("ContactController/GetListAll")] public ActionResult<IEnumerable<Contact>> GetListAll() { return contacts.ToList(); } [HttpPost] [Route("ContactController/PostContactByID")] public Contact PostContactByID(int id) { Contact contact = contacts.FirstOrDefault<Contact>(item => item.ID == id); if (contact == null) { throw new System.Web.Http.HttpResponseException(HttpStatusCode.NotFound); } return contact; } [HttpPost] [Route("ContactController/GetListBySex")] public ActionResult<IEnumerable<Contact>> GetListBySex(string sex) { return contacts.Where(item => item.Sex == sex).ToList(); } }四、启动测试
测试:
返回对象
返回对象列表
因为不熟悉:中间遇到,只允许唯一别名问题,加上特性。解决返回对象格式异常等。 群主提到安全性问题: 因为是第一次构建webapi,未启用安全认证,完全开放式。生产环境中需要token验证。后续改进。