本篇實現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. 查看測試結果