【🔒 Python API框架篇 - FastAPI】Ep.1 啟航

閱讀時間約 2 分鐘

關於FastAPI這個框架為什麼有什麼樣的優勢, 為什麼會這麼熱門? 歡迎參考「【Python 技術選型】如何選出適合的API框架呢?」。

站在巨人的肩膀上

FastAPI主要基於以下兩個重要的元件組成, StarlettePydantic, 就讓我們來看看兩者的關係吧!

raw-image


安裝

pip install fastapi

# 安裝ASGI伺服器
pip install "uvicorn[standard]"

簡單的範例

import uvicorn

from fastapi import FastAPI

# 建立進入點
app = FastAPI()

# 定義API
@app.get('/')
def hello_world():
return 'Hello World'

# users的API
@app.get('/users/{user_id}')
def get_users(user_id: int, qry: str = None):
return {'user_id': user_id, 'query': qry}

uvicorn.run(app, host='0.0.0.0', port=8000)

啟動服務

python test.py 

接著我嘗試用curl來存取API。

curl <http://127.0.0.1:8000>

# "Hello World"

curl <http://127.0.0.1:10242/users/1\\?qry\\=10>

# {"user_id":1,"query":"10"}%

互動式文件

前往: http://127.0.0.1:8000/docs

raw-image



我們可以看到互動式文件會自動進行渲染, 如此一來便結合註解與程式碼就能夠自動產生文檔, 減少溝通成本了。

結語

簡單的幾個步驟我們就能夠完整的架設起一隻API, 這就是FastAPI的厲害之處, 果然非常快速啊! 而且互動式文檔讓我們與前端的溝通上更加順利, 除此之外透過裝飾器也大幅度的提升可讀性, 非常適合入門使用!

108會員
250Content count
哈囉,我是阿Han,是一位 👩‍💻 軟體研發工程師,喜歡閱讀、學習、撰寫文章及教學,擅長以圖代文,化繁為簡,除了幫助自己釐清思路之外,也希望藉由圖解的方式幫助大家共同學習,甚至手把手帶您設計出高品質的軟體產品。
留言0
查看全部
發表第一個留言支持創作者!
阿Han的沙龍 的其他內容
點陣圖 點陣圖是由許多方格像素組成的圖片, 因此我們常常在將圖片放大時會呈現像是馬賽克的狀況, 假設期望圖片越清晰那所需要的像素會較多個, 因此空間耗用量也相對較大。 常見的格式有: .JPG .PNG .GIF .BMP .TIFF等格式。 繪製程式碼: 向量圖 向量
繼上次分享的「【🔒 影像辨識 - 影像處理】Ep.1 關於影像的基本單位, 相信我們對於影像的儲存應該有了基本的認識了, 那麼接下來我們會需要的是了解顏色的組成。 我們除了在文章裡講述概念之外, 也會提供實作的數位作品分享給大家, 請大家根據範例學習與練習。 關於顏色 灰階的時代 早期尚未
歡迎來到「阿Han的軟體心法實戰營 - 影像處理」系列的文章區,我們會針對影像處理的相關知識、開發技巧進行分享,並教你手把手用程式寫出屬於自己的影像處理程式, 當然也會包括AI模型訓練的部分,就讓我們一起來探索影像處理的領域吧! 在進入影像辨識的世界之前, 我們先來了解一下關於解析度的基本概念吧!
這篇文章主要討論了Toyz超派事件背後的訊息與軟體研發的關聯性,並提出瞭如何減少被批評、以及如何讓機器充當QA的建議。另外也推薦了一些關於良好寫作習慣的主題。通過AI協助排除繁瑣事務,著重於高品質的人際互動,減少分歧與紛爭。
torchaudio 是 PyTorch 的官方音訊處理庫,提供了許多用於音訊數據讀取、轉換和處理的工具和功能。它旨在簡化音訊數據的加載、預處理和後續處理過程,同時與 PyTorch 緊密整合, 包括我們常常用於資料科學處理的Tensor資料。 這個篇章主要在分享我們如何使用標準的I/O進行讀
歡迎來到 【👌 程式碼質量案例】 系列, 這邊我們將分享實際開發過程中會遇到的程式碼難以維護的案例及解決方法, 期望透過這些技巧讓我們的產品更加的穩健也更容易於維護。 P.S 本篇會以Python程式語言進行示範, 其他語言的處理方式也雷同, 包括Javascript、Golang…等。 📖
點陣圖 點陣圖是由許多方格像素組成的圖片, 因此我們常常在將圖片放大時會呈現像是馬賽克的狀況, 假設期望圖片越清晰那所需要的像素會較多個, 因此空間耗用量也相對較大。 常見的格式有: .JPG .PNG .GIF .BMP .TIFF等格式。 繪製程式碼: 向量圖 向量
繼上次分享的「【🔒 影像辨識 - 影像處理】Ep.1 關於影像的基本單位, 相信我們對於影像的儲存應該有了基本的認識了, 那麼接下來我們會需要的是了解顏色的組成。 我們除了在文章裡講述概念之外, 也會提供實作的數位作品分享給大家, 請大家根據範例學習與練習。 關於顏色 灰階的時代 早期尚未
歡迎來到「阿Han的軟體心法實戰營 - 影像處理」系列的文章區,我們會針對影像處理的相關知識、開發技巧進行分享,並教你手把手用程式寫出屬於自己的影像處理程式, 當然也會包括AI模型訓練的部分,就讓我們一起來探索影像處理的領域吧! 在進入影像辨識的世界之前, 我們先來了解一下關於解析度的基本概念吧!
這篇文章主要討論了Toyz超派事件背後的訊息與軟體研發的關聯性,並提出瞭如何減少被批評、以及如何讓機器充當QA的建議。另外也推薦了一些關於良好寫作習慣的主題。通過AI協助排除繁瑣事務,著重於高品質的人際互動,減少分歧與紛爭。
torchaudio 是 PyTorch 的官方音訊處理庫,提供了許多用於音訊數據讀取、轉換和處理的工具和功能。它旨在簡化音訊數據的加載、預處理和後續處理過程,同時與 PyTorch 緊密整合, 包括我們常常用於資料科學處理的Tensor資料。 這個篇章主要在分享我們如何使用標準的I/O進行讀
歡迎來到 【👌 程式碼質量案例】 系列, 這邊我們將分享實際開發過程中會遇到的程式碼難以維護的案例及解決方法, 期望透過這些技巧讓我們的產品更加的穩健也更容易於維護。 P.S 本篇會以Python程式語言進行示範, 其他語言的處理方式也雷同, 包括Javascript、Golang…等。 📖
你可能也想看
Thumbnail
1.加權指數與櫃買指數 週五的加權指數在非農就業數據開出來後,雖稍微低於預期,但指數仍向上噴出,在美股開盤後於21500形成一個爆量假突破後急轉直下,就一路收至最低。 台股方面走勢需觀察週一在斷頭潮出現後,週二或週三開始有無買單進場支撐,在沒有明確的反轉訊號形成前,小夥伴盡量不要貿然抄底,或是追空
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
《貓博物館》遊戲適合喜歡2D橫向卷軸、恐怖獵奇、詭譎插畫風格、點擊解謎、很多貓的玩家遊玩。
Thumbnail
從2021年底開始我有一股動力想要紀錄自己的一些行為,從紙本筆記本到後來變成了電子版本,使用了幾款電子手帳順道了解自己的習慣認知。 從每日雜事紀錄,轉變成心情日記,再後來簡化成任務形式。 寫著一段時間又遇到類似拖延症的瓶頸,剛好這次交換書群組裡有一本是《原子習慣》。
Thumbnail
信度,不光應用在句子、寫作,還有日常對話、你的人生。
…某方面來說,昨天我的回話算是一種可以句點對方的同時又不會有攻擊性的溫和型內容,這樣子除了給對方一點台階下也可以是給我自己更多時間整理自己。 仔細思考後發現這樣子實際上我是正在藉由這樣的方式訓練自己擁有泰然自若的心以及柔軟的身段。
Thumbnail
此文內容為無雷介紹 & 防雷心得。遊戲平台連結附於最底可以END查看。遊戲特色:體感、遊戲中的選擇可以隨心所欲、角色全程語音、劇情扣人心弦、如同現實一樣的事件來互動、CG質量高、語言繁中、音樂好聽、感受送禮不手軟、享受觀察他人
Thumbnail
1.加權指數與櫃買指數 週五的加權指數在非農就業數據開出來後,雖稍微低於預期,但指數仍向上噴出,在美股開盤後於21500形成一個爆量假突破後急轉直下,就一路收至最低。 台股方面走勢需觀察週一在斷頭潮出現後,週二或週三開始有無買單進場支撐,在沒有明確的反轉訊號形成前,小夥伴盡量不要貿然抄底,或是追空
Thumbnail
重點摘要: 1.9 月降息 2 碼、進一步暗示年內還有 50 bp 降息 2.SEP 上修失業率預期,但快速的降息速率將有助失業率觸頂 3.未來幾個月經濟數據將繼續轉弱,經濟復甦的時點或是 1Q25 季底附近
Thumbnail
近期的「貼文發佈流程 & 版型大更新」功能大家使用了嗎? 新版式整體視覺上「更加凸顯圖片」,為了搭配這次的更新,我們推出首次貼文策展 ❤️ 使用貼文功能並完成這次的指定任務,還有機會獲得富士即可拍,讓你的美好回憶都可以用即可拍珍藏!
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
此篇為路線心得所以會有劇情雷,若只想看遊戲介紹及無雷心得請至https://vocus.cc/wow_gamereview/628209a9fd897800013930c3
Thumbnail
《貓博物館》遊戲適合喜歡2D橫向卷軸、恐怖獵奇、詭譎插畫風格、點擊解謎、很多貓的玩家遊玩。
Thumbnail
從2021年底開始我有一股動力想要紀錄自己的一些行為,從紙本筆記本到後來變成了電子版本,使用了幾款電子手帳順道了解自己的習慣認知。 從每日雜事紀錄,轉變成心情日記,再後來簡化成任務形式。 寫著一段時間又遇到類似拖延症的瓶頸,剛好這次交換書群組裡有一本是《原子習慣》。
Thumbnail
信度,不光應用在句子、寫作,還有日常對話、你的人生。
…某方面來說,昨天我的回話算是一種可以句點對方的同時又不會有攻擊性的溫和型內容,這樣子除了給對方一點台階下也可以是給我自己更多時間整理自己。 仔細思考後發現這樣子實際上我是正在藉由這樣的方式訓練自己擁有泰然自若的心以及柔軟的身段。
Thumbnail
此文內容為無雷介紹 & 防雷心得。遊戲平台連結附於最底可以END查看。遊戲特色:體感、遊戲中的選擇可以隨心所欲、角色全程語音、劇情扣人心弦、如同現實一樣的事件來互動、CG質量高、語言繁中、音樂好聽、感受送禮不手軟、享受觀察他人