Azure Cosmos DB 具備現今應用程式都要求的快速回應能力,完全受控的 NoSQL、開箱即用的低延遲與高可用性,這些特性幾乎讓 Cosmos DB 成為新式應用程式的首選資料庫。而做為與資料庫的溝通介面,在 Python 中非常熱門 FastAPI 框架,讓開發者簡單快速地建構出高效能、高穩定的 RESTful API。
本篇將結合 Azure Cosmos DB 與 Python FastAPI 在一個簡單的 Todo-list 範例上實作基本的 CRUD 操作,完整程式碼歡迎參考下方 GitHub 連結。
相關連結:https://github.com/charliewei0716/python-fastapi-azure-cosmos-db-todo-list
免費建立 Azure Cosmos DB
秉持「能免費就決不花一毛錢」的精神,免費建立的 Cosmos DB 肯定是我們的首選,而這次 Azure 非常佛心推出的免費試用版,通過以下連結進入,甚至連信用卡都不用綁就能免費試用 30 天。
免費建立 Azure Cosmos DB |
建立完成就能進入 Portal 畫面:
建立完成 |
上方可以看到免費倒數的 30 天,時間倒數結束時也能再重新建立一個新的 Cosmos DB,又可以再次免費 30 天,這不是我認識的 Azure 😍
相關連結:https://cosmos.azure.com/try/
開啟 GitHub Codespaces
我不會在這邊對 GitHub Codespaces 有太多的解釋,因為這並不是本篇的重點,但對於建置一致的開發環境來說,GitHub Codespaces 是一項值得花時間了解的服務。
使用 GitHub Codespaces 的方式非常簡單,先進到下方 GitHub 連結,在登入 GitHub 後點擊 README.md 中的「Open in GitHub Codespaces 」。
相關連結:https://github.com/charliewei0716/python-fastapi-azure-cosmos-db-todo-list
Open in GitHub Codespaces |
進入 Codespaces 時不用做任何動作,它會在啟動時自動安裝所需的 Python 套件,直到在瀏覽器中看到 VSCode 的畫面就代表成功。
FastAPI
在啟動 FastAPI 時會使用到 Cosmos DB 的連線資訊,可以到 Portal 中的「索引鍵」頁面,將「URI」與「PRIMARY KEY」複製下來備用。
Cosmos DB 的連線資訊 |
回到 Codespaces,在 src 資料夾中建立用來存放環境變數的 .env 檔,並將剛剛複製好的資訊使用 COSMOS_URI 與 COSMOS_KEY 填入。
建立 .env 檔 |
在「終端機」中使用以下指令來啟動 FastAPI:
接著切到「連接埠」後,點擊地球圖示以在分頁中開啟網頁。
連接埠 |
在開啟的網址最後加上 /docs,就能看到 FastAPI 自帶的 Swagger UI 囉!
運行成功 |
環境一切就緒後,在下一篇中,我們將會開始介紹使用 Python SDK 連線 Cosmos DB 的方式,與基本的 CRUD 操作,請繼續收看!
留言
張貼留言