本篇实现F4功能(见红色部分)
功能序号 | HTTP谓词(HTTP verbs) | API | 描述 |
F1 | GET | /api/users |
管理员获取用户列表 |
F2 | POST | /api/users |
管理员添加用户 |
F3 | PATCH | /api/users/{id}/role | 管理员修改用户角色 |
F4 | PATCH | /api/users/{id}/state | 管理员锁定/解锁用户 |
F5 | GET | /api/users/{id} | 用户获取自己的信息 |
F6 | PUT | /api/users/{id} | 用户更新自己的信息 |
F7 | PATCH | /api/users/{id} |
用户修改密码 |
和上一篇一样,这里的HTTP谓词也用Patch,并且也需要在Endpoint(终结点)上加[Route("{id}/state")]的路由属性,
stateCode=1 时表示正常,stateCode=0表示锁定,代码如下:
1 [HttpPatch] 2 [Route("{id}/state")] 3 public ContentResult ManageState(int id) 4 { 5 int stateCode = Convert.ToInt32(Request.Query["stateCode"]); 6 7 _userDao.UpdateUserState(id, stateCode); 8 9 return Content("{'result':'success'}"); 10 }
下面简单介绍一下使用Postman给webapi做测试.
官网地址:https://www.postman.com/
下载安装后打开POSTMAN可以看如下的界面:
要测试本例中的API,需要提供如下信息:
1 . HTTP谓词:Patch
2 . 网址:http://localhost:52384/api/users/2/state
3 . 查询字符串:statecode=1
测试步骤如下:
1. 点红圈处的"+"新建一个测试TAB
2. 选择HTTP谓词Patch
3. 输入网址http://localhost:52384/api/users/2/state
4. 添加查询参数statecode=1
5. 点Send按钮发送信息
6. 查看测试结果