在 ASP.NET Core 中自訂 AuthenticationScheme
ASP.NET Core 有提供一些預設的 authentication scheme 可以使用,常見的有 Cookie Authentication 或是 JWT Bearer Token。當然,我們如果有其他需求也可以依照需要的效果自訂 authentication scheme 以滿足特殊規則的驗證方法。要建立一個 authentication scheme 需要包含 scheme 的名字、AuthenticationHandler 以及 AuthenticationSchemeOptions。
ASP.NET Core 中的驗證
請求的驗證是很多系統都會需要實作的功能之一,本篇筆記介紹在 ASP.NET Core 中驗證的機制以及在驗證中各個角色的負責項目。本篇筆記會介紹 Authentication middleware、authentication scheme 及 authentication handler 之間的關係,以及 authentication handler 中 Authenticate、Challenge 及 Forbid 分別代表的意義以及觸發的時機。
Index fragmentation 索引碎片化
在對資料庫進行異動時,資料庫會將資料寫入 Page、在 Page 之間移動或是從 Page 中移除,資料庫會決定資料要放在既有的 Page 或是多開一個新的 Page 儲存,在資料異動的過程中會有 Page 沒有被放滿的情況出現,在 Page 裡面留有空白的地方即稱之為 Internal fragmentation。
Deadlock 死結
進入職場一年後,遇到了以前覺得在教科書上才會看到的恐怖事情-Deadlock。
ASP.NET Core 中的路由
ASP.NET Core中的路由可以分為慣例路由(Conventional routing)和屬性路由(Attribute routing),慣例路由通常用在Controller和View,屬性路由通常用在REST API,這篇筆記記錄屬性路由的相關設定。
Middleware in ASP.NET Core
ASP.NET Core中,請求與回應會經過一連串的Middleware(中介軟體),每個Middleware都有各自的職責,例如用於驗證、授權或是錯誤處理等。當請求或回應流經Middleware時,Middleware會處理並選擇是否將請求傳遞到下一個Middleware,或者是將其短路。
ASP.NET Core 基礎
.NET Core 可以建立Web及桌面應用程式,本篇筆記記錄 ASP.NET Core 建立 Web 應用程式時的基礎概念。
base 關鍵字
base 關鍵字用於存取基底類別的成員,base包含「取用基底類別的函式」和「呼叫基底類別的建構式」兩種使用時機。