iT邦幫忙

鐵人檔案

2023 iThome 鐵人賽
回列表
Software Development

Rust Web API 從零開始 系列

我會介紹在讀Zero To Production In Rust的心得
練習的程式碼在此
https://github.com/marvin-hsu/zero_to_production

鐵人鍊成 | 共 30 篇文章 | 20 人訂閱 訂閱系列文 RSS系列文
DAY 21

Day21 - 整合認證信寄送

昨天建立了用來寄送email的組件,接下來就要把它放到API中了,首先要對資料表進行異動,除了增加一個欄位用來紀錄訂閱的狀態以外,也要增加一張表用來紀錄認證信所...

2023-09-21 ‧ 由 marvinhsu 分享
DAY 22

Day22 - 訂閱確認,再論SeaORM中的ActiveModel

目前已經完成訂閱的功能,當使用者登記的時候會收到一封驗證信,點入信中的連結便會將訂閱狀態改為啟用。 Handler 首先我們就來新增一個handler吧: pu...

2023-09-22 ‧ 由 marvinhsu 分享
DAY 23

Day23 - 權限驗證(1) - JWT Handler

到目前為止基礎的功能已經完成了,接下來幾天就要來做一些附加的內容,比如說使用後台API來做管理,所以就來做個登入用的API吧。 JWT權限驗證 關於權限驗證的方...

2023-09-23 ‧ 由 marvinhsu 分享
DAY 24

Day24 - 權限驗證(2) - Login API

把昨天包裝好的JWTHandler加入AppState後,就要來完成Login API了,首先我們要建立一張新的表用來放管理員的帳號密碼: async...

2023-09-24 ‧ 由 marvinhsu 分享
DAY 25

Day25 - 權限驗證(3) - 自己寫個middleware吧

透過昨天建立的Login API,使用者登入後,我們需要在特定的API驗證cookie中JWT token的有效性,這一點需要靠中介軟體來達到。通常情況下我們不...

2023-09-25 ‧ 由 marvinhsu 分享
DAY 26

Day26 - 關於Rust開發Web API這件事

我的Rust WebAPI的練習side project告一個段落,我想分享一些心得。 首先,我發現使用Rust來開發Web應用並不像我想像中的那麼困難。在實際...

2023-09-26 ‧ 由 marvinhsu 分享
DAY 27

Day27 - 附錄: Rust中的非同步程式設計(1)

接下來幾篇文章要來探討在Rust中的非同步程式設計,主要內容參考Rust的async book,並且與C#中的Task做比較。 rust採取的非同步模型來源自F...

2023-09-27 ‧ 由 marvinhsu 分享
DAY 28

Day28 - 附錄: Rust中的非同步程式設計(2)

昨天我們提到,C#中的Task是以背景執行的任務排程器透過一定的機制去輪詢(Poll)執行中的Task狀態,進一步的介紹可以看一下TaskScheduler的文...

2023-09-28 ‧ 由 marvinhsu 分享
DAY 29

Day29 - 附錄: Rust中的非同步程式設計(3)

昨天介紹了future的特徵,現在我們要由上而下的看一個非同步應用程式,今天要介紹的內容參考這裡,我們要看看runtime如何處理一個非同步程式問題。 asyn...

2023-09-29 ‧ 由 marvinhsu 分享
DAY 30

Day30 - 附錄: Rust中的非同步程式設計(4)

昨天我們看到rust的async/await會在編譯時期把非同步方法實作成Future物件,並且把所有的Future物件組織成樹狀資料結構,使得runtime可...

2023-09-30 ‧ 由 marvinhsu 分享