[Day16] 架構優化:非同步存取 DB (2) 本次的程式碼與目錄結構可以參考 FastAPI Tutorial : Day16 branch 回顧...
我們在實務上面常常會遇到要定期執行某項事件的時候,這個時候有很多套件或軟體可以達成這件事情,今天要介紹的是 Python 中的 ApScheduler 這個套件...
今天我們要來講解如何在 FastAPI 中使用 WebSocket,首先我們先來了解甚麼是 WebSocket吧。 WebSocket WebSocket 是一...
[Day14] 架構優化:將 CRUD 與 API endpoint 分離 本次的程式碼與目錄結構可以參考 FastAPI Tutorial : Day14...
前一章節我們介紹了非同步的 database 連線,那對於網路請求我們也可以使用非同步的方式,讓我們在存取第三方 API 或是與其他微服務串接時能夠提升效能。...
今天我們將介紹如何在 fastapi 中集成與資料庫的非同步連線。 我們與官方文件教學不同的是使用 sqlalchemy 本身的 asyncio 功能,筆者記得...
我們在使用 FastAPI 時常常會看到路徑操作函式會定義為 async def 的函式,而不是一般直接使用 def 聲明,使用 async def 聲明是表示...
由於三個發票類型情境,可以再拆分成兩組, (1) 傳統發票、紙本電子發票 (2) 載具 通常發票應該可以一次存入多張,所以這邊將傳統發票、紙本電子發票歸類一組;...
回顧一下前幾天的 MongoDB 資料庫設計,應該有留意到不論是在傳統發票、紙本電子發票以及載具,我都是利用 tag 來做區隔,這是為了可以將資料全部都塞在同一...
當我們在撰寫程式時,需要對自己的程式碼進行自動化測試時,FastAPI 可以使用 Pytest 進行測試。 由於 FastAPI 是基於 Starlette 開...
我們在實務上難免會遇到需要去限制端點的流量,那 FastAPI 本身並沒有提供這個功能,我們可以使用第三方套件來實作這件事。 而這次要介紹的是 SlowAPI...
今天會講解如何在 FastAPI 中與其他的 NoSQL 資料庫做連結。這次會使用 Amazon DynamoDB 作為 DB 來進行操作,我們會使用 aws...
今天要介紹的是如何在 FastAPI 的框架啟動或結束時可以做一些前置作業的用法。 舉個例子來說, FastAPI 常常被拿來作為AI模型部署時的一個解決方案,...
接下來我都會用 Docker 來實作,流程如下: 首先你的電腦需要安裝 Docker 桌機版 撰寫 Dockerfile 來 build image FR...
跨域資源共享 ( CORS ) 是指瀏覽器執行的網站頁面擁有與後端溝通的JavaScript程式碼時,前端與後端處於不同「源」的情況。 源 ( Origins...
今天是這個簡易庫存系統的最後一天,我們用 Cookies 搭配 JWT 的實作來做個收尾。每個專案對於 jwt 的做法都不同,有的專案可能會分為長時效的 ref...
後台任務是指說,將回應返回給用戶端之後要執行的任務。例如說寄出電子郵件,將資料傳送到消息佇列中之類的需要時間的操作。如果在回應前就執行這些操作可能會額外增加用戶...
我們在前面幾章介紹了如何實作一個簡易的會員系統以及JWT機制,在本章節我們將結合 JWT 來對庫存的 Item 表進行一個權限控管。 我們將會實作以下功能:...
接著我們可以使用帳號密碼登入後,我們便可以實作幫使用者維持登入狀態。這個時候我們便可以使用JWT或與其類似的技術來實作。 JWT JWT ( Json Web...
我們會花兩個章節實作有關安全性的操作,我們會將信箱及密碼欄位新增到顧客表上,並實作登入驗證,及核發 JWT。 新增欄位 # src/models.py cla...
上一章節將資料表對應與資料庫設定完成,本次章節便可以實作針對資料庫的CRUD。 顧客資料 我們針對顧客資料實作新增顧客資料、拿取顧客資料、更新顧客資料、刪除顧客...
目的 當今,對話式人工智慧當道,本系列希望使用對話方式,帶入大家進入日常開發的情境,我們深入探討一個充滿活力的程式開發團隊,由年輕有熱情的小獅子和資深充滿智慧的...
我們在上一章節已經處理好了資料庫的相關設定與資料表遷移。接下來要開始進入API端點的建立環節。在建立端點前,我們先了解說如果使用者對端點發出請求後如果處理程序之...
在開始系列文章之前,先簡單聊聊為何想寫 FastAPI 這個主題~ 我本身是一位非資工相關科系背景的,當初會接觸 python 是因為有大量實驗數據需要分析才開...
在本章節中,我們將使用 SQLite 作為我們的目標資料庫進行使用。在前幾章有介紹了怎麼創建一個 FastAPI 的 app 以及檔案架構,這次我們使用一體式架...
我們透過這個簡易庫存系統的案例,帶大家建置一個簡單的FastAPI專案。 下圖為此系統的資料庫規劃 : 我們會使用到3個表,顧客、訂單、產品三張表。 我們會根...
在前幾個章節我們介紹到在實作API中如何傳遞參數,接下來我們將會用一個簡易的專案帶大家更了解 FastAPI。 那在實作之前,我們先介紹在FastAPI中常用的...
依賴注入是 FastAPI 的一個簡單好用的功能,可以將路徑操作函數所需要的方法,透過 FastAPI 框架先行執行後提供給路徑操作參數。 依賴注入常用於:...
在實作中會遇到需要將資料發送到Server的情境,比如新增使用者、更新帳號密碼等等。 這些時候會使用 Post、Put、Patch 等可以帶資料的 http m...
在設計API中,肯定會碰到需要傳入參數的時候。 舉個例子,我們使用點餐系統作為範例,實作API時,拿取一張訂單可能會設計為 /order/1 或者是 /orde...