Flask RESTful Web服務的開發套路總結
這兩天看了《Flask Web開發》一書的第14章,關於 Flask RESTful Web服務的相關內容,有些地方還不太完全理解,這裡只記錄自己總結出來的一點感想,很有侷限性,僅作記錄和參考。
REST架構 的本質是將一切內容都當作資源對待,所以,針對不同的資源,後臺應該用不同的路由進行管理,而其中的簡單套路總結於此:
資源管理動作的分類:
- 查詢單項/列表資源:列出該類/該項資源
- 新建/編輯資源:建立/修改資源內容,可能需要提供相應許可權
- 查詢關聯資源: 多個型別的資源因業務相互關聯,如:作者——文章——評論
資源管理動作的路由程式碼編寫套路:
查詢單項資源:
1. 查詢資源物件 get_or_404(id) 2. return jsonify(資源.to_json())
查詢列表資源:
1. 獲取當前查詢的頁碼 `page` 2. 根據 `page` 查詢當前頁所對應的資料集 3. 根據當前頁位置指定前後頁url 4. return jsonify({資源列表, 前一頁url, 後一頁url, 資料記錄總數})
新建資源: 1. 根據請求發來的資料建立資源資料 2. 檢查當前使用者是否有操作許可權 3. 存入資料庫 4. return jsonify(資源.to_json()), 201, {資源url}
編輯資源:
1. 查詢資源物件 get_or_404(id) 2. 檢查當前使用者是否有操作許可權 3. 將修改寫入資料庫 4. return jsonify(資源.to_json())
查詢關聯資源:
1. 查詢關聯關係中的主體資源物件 get_or_404(id) 2. 獲取當前查詢的頁碼 `page` 3. 根據 `page` 查詢當前頁所對應的資料集 4. 根據當前頁位置確定前後頁url 5. return jsonify({資源列表, 前一頁url, 後一頁url, 資料記錄總數})
以上幾種就是常見的Flask RESTful Web服務開發的基本套路。以後有遇到新的或需要修改的會逐步更新。
相關文章
- Flask 系列 - 基於 Flask 提供 RESTful Web 服務FlaskRESTWeb
- 搭建 Restful Web 服務RESTWeb
- 使用CXF開發RESTFul服務REST
- RESTFul Web Api 服務框架(一)RESTWebAPI框架
- 關於 Flask Web 開發的個人小結FlaskWeb
- yii2 restful web服務路由RESTWeb路由
- Yii2.0 RESTful Web服務(3)RESTWeb
- Yii2.0 RESTful Web服務(4)RESTWeb
- 第19章 建立RESTful Web服務RESTWeb
- PHP開發Web服務PHPWeb
- java JAX-RS快速開發RESTful服務JavaREST
- Java開發中RestFul服務介面規範JavaREST
- 轉享:Ehcache 服務和RESTful Web ServicesRESTWeb
- Flask RESTful API 開發----基礎篇 (1)FlaskRESTAPI
- Flask RESTful API 開發----基礎篇 (2)FlaskRESTAPI
- 用 Go 快速開發一個 RESTful API 服務GoRESTAPI
- 移動社交App服務端開發總結APP服務端
- yii2 restful web服務快速入門RESTWeb
- yii2 restful web服務[格式響應]RESTWeb
- Flask web開發(3):模板FlaskWeb
- 使RESTful Web服務更加實用的10個建議RESTWeb
- 移動web開發總結Web
- Web APP開發技巧總結WebAPP
- 使用flask開發RESTful架構的api伺服器端(3)–簡單的RESTful servicesFlaskREST架構API伺服器
- Flask web 開發(1):安裝FlaskWeb
- 使用 Jersey 和 Apache Tomcat 構建 RESTful Web 服務ApacheTomcatRESTWeb
- 使用flask開發RESTful架構的api伺服器端(1)–什麼是RESTful和為什麼選擇flaskFlaskREST架構API伺服器
- 使用flask開發RESTful架構的api伺服器端(5)–部署flask應用到nginxFlaskREST架構API伺服器Nginx
- Samba服務的配置總結Samba
- 使用flask開發RESTful架構的api伺服器端(2)–flask的安裝和使用FlaskREST架構API伺服器
- web前端開發規範總結Web前端
- web移動開發總結(六)Web移動開發
- Web高效能開發總結Web
- flask-restful 大型專案結構示例FlaskREST
- 《Flask Web 開發指南 pt.2》FlaskWeb
- Flask Web開發學習之“HelloWorld”FlaskWeb
- 【flask框架】——flask-restful風格Flask框架REST
- python web開發-flask中日誌的使用PythonWebFlask