日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

FastAPI 是什么?

發(fā)布時間:2023/12/16 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FastAPI 是什么? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

FastAPI 是什么?

  • Django、FastAPI 都是 Web 開發(fā)框架,REST、GraphQL 是 API 的形式。
  • Django、FastAPI 都可以實現(xiàn) REST 接口和 GraphQL 接口。

以下是我的一些初步的認識:

  • FastAPI 是一個輕量級的 Web 框架。相比起來,Django 是 battery included,雖然配置麻煩,但默認就帶了許多功能,包括很好用的 ORM、migration 工具,也包括很多安全方面的中間件等等,還有比如模板系統(tǒng)、靜態(tài)資源管理系統(tǒng)等等,對于一般的業(yè)務網(wǎng)站來說,Django 是開箱即用的。FastAPI 則非常輕量,它本身什么都不帶,沒有 ORM、沒有 migration,沒有中間件,什么都沒有。
  • FastAPI 是專門針對 REST 接口定制優(yōu)化的,使用 FastAPI,可以自動生成 openapi 文檔(用 swagger 渲染),代碼本身也有很強的注釋屬性(即看代碼跟看文檔效果是類似的)。
  • FastAPI 是強類型的,強制使用 type hint,強制使用 pydantic,數(shù)據(jù)類型檢查也是強制的(包括輸入檢查和輸出檢查)。
  • FastAPI 本身的所有代碼都充分考慮了 IDE 補全,包括考慮如何讓業(yè)務代碼也可以有 IDE 補全。這個補全是基于強類型的背景,因此許多問題也都可以靜態(tài)檢查出來。
  • FastAPI 借鑒了 Angular 的依賴注入機制,這套機制我覺得比 Django 的中間件方式要直觀很多。
  • FastAPI 支持 GraphQL,但也是用 Graphene 實現(xiàn)的,只是提供了路由掛載支持,與 Django 無異。因此在 FastAPI 里面寫 GraphQL 的話,其實得不到上述任何優(yōu)點,除了輕量級以外,并沒有什么優(yōu)勢。
  • 由于 FastAPI 不自帶 ORM、migration 工具,我們?nèi)绻?FastAPI 的話,就得使用其他 ORM、migration。目前最好的候選項是 SQLAlchemy。

以上是我的認識,歡迎大家補充討論。

總結(jié)

以上是生活随笔為你收集整理的FastAPI 是什么?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。