从 Flask-RESTful 到 Flask-RESTPlus 再到 Flask-RESTX
Django 和 Flask 一直都是 Python 開發 Web 的首選,而 Flask 的微內核更適用于現在的云原生微服務框架。但是 Flask 只是一個微型的 Web 引擎,所以我們需要擴展 Flask 使其發揮出更強悍的功能。
Flask-RESTful
Flask-RESTful 就是 Flask 擴展中的佼佼者,它增加了對快速構建 RESTful API 的支持,將 Flask 封裝了一層,使其更容易、更快速、更便捷的開發 RESTful API。
- GitHub:https://github.com/flask-restful/flask-restful
- Docs:https://flask-restful.readthedocs.io/en/latest/
Flask-RESTPlus
我們知道 Flask-RESTful 是 Flask 的擴展,而 Flask-RESTPlus 則是 Flask-RESTful 的擴展,對 Flask-RESTful 完全兼容且對其進行增強了接口文檔的支持。
Flask-RESTPlus 提供了一個連貫的裝飾器和工具集合來描述文檔 API 所需要的參數和對象,并使用 Swagger 將其解析成正確的接口文檔。
- GitHub:https://github.com/noirbizarre/flask-restplus
- Docs:https://flask-restplus.readthedocs.io/en/latest/
Flask-RESTX
既然已經有了很完美的 Flask-RESTPlus,那為什么還需要 Flask-RESTX 呢?
其實在很長時間中我都一直都在使用 Flask-RESTPlus,但是難受的是作者丟了!沒錯,就是物理意義上的丟了,Flask-RESTPlus 這個項目團隊的成員都找不動他了,團隊為了持續維護這個項目只能另開一個分支,將 Flask-RESTPlus 繼續延續下去,繼續延續后的項目就是 Flask-RESTX。
Flask-RESTX 完全兼容 Flask-RESTPlus,Flask-RESTPlus 項目里積攢的問題、BUG 都由 Flask-RESTX 完全繼承并且社區團隊在積極維護匯總,我們公司的項目也已全部遷移過來了,在此也希望這個項目能一直好好活著。
- GitHub:https://github.com/python-restx/flask-restx
- Docs:https://flask-restx.readthedocs.io/en/latest/
FastAPI
本來到 Flask-RESTX 本文就該結束了,但是我們不能故步自封,就在查這些 Flask 相關資料的時候,發現了一個新式的 Python Web 框架 FastAPI。
FastAPI 是獨立于 Flask 的新式 Web 框架,雖然能看到很多 Flask 和相關擴展的影子,但是它也成為不可忽視的 Web 框架之一,而且 FastAPI 還號稱是最快的Python框架之一。
至于是否會使用 FastAPI,我目前只作為參考,以為公司的項目遷移起來代價太大,大家有興趣的可以去官網看看。
- GitHub:https://github.com/tiangolo/fastapi
- Docs:https://fastapi.tiangolo.com
總結
以上是生活随笔為你收集整理的从 Flask-RESTful 到 Flask-RESTPlus 再到 Flask-RESTX的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何实现 iOS 短视频跨页面的无痕续播
- 下一篇: 创业者防坑手册:面对强大的资本力量,你该