統一接口設計風格:
1.URL地址盡量使用名詞,不要出現動詞
2.使用不同的請求方式,代表要執行不同的操作 (GET)獲取 POST(新增) PUT(修改)DELETE(刪除) 不常用:PATCH(修改) HEAD(只返回請求頭沒有請求體) OPTIONS(獲取信息)
3.訪問URL地址時,如果有一些過濾的參數,參數可以放到查詢字符串中
4.響應數據: GET /books/:返回所有的圖書數據 GET /books/1/:返回id為1的圖書數據 POST /books/:將新增的圖書數據返回 PUT /books/1/:將修改的圖書數據返回 DELETE /books/1:返回空文檔 獲取|修改:200 新增:201 刪除:204 參數有誤:400 服務器出錯:500 5.響應數據的格式:json 了解:1.域名:使用專有域名 2.版本:將版本信息放在url地址 3.錯誤:將錯誤信息返回 4.在訪問api接口時,將和接口相關的其他API接口的地址也在響應數據中返回
Django自定義RestAPI
需求: 設計一套符合RestAPI風格的接口,提供以下5個接口:
1. 獲取所有圖書數據:GET /books/
2. 新增一本圖書數據:POST /books/
3. 獲取指定的圖書數據(根據id):GET /books/(?P<pk>\d+)/
4. 修改指定的圖書數據(根據id):PUT /books/(?P<pk>\d+)/
5. 刪除指定的圖書數據(根據id):DELETE /books/(?P<pk>\d+)/
DRF框架-RestAPI接口的核心工作
序列化:將模型對象轉換為字典或者json的過程,叫做序列化的過程。
反序列化:將客戶端傳遞的數據保存轉化到模型對象的過程,叫做反序列化的過程。
核心:
1. 將數據庫數據序列化為前端所需要的格式,並返回;
2. 將前端發送的數據反序列化為模型類對象,並保存到數據庫中