The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

前後端專案在設定 CI 時應注意版本相依問題

昨天有個五年前的專案,由於正式環境出了一點狀況想要重新部署,但卻發現 CI 已經無法正常執行,不是版本不對就是套件異常,弄了好幾個小時才搞定。這篇文章我想分享一下這次處理的經驗與心得分享。

... 繼續閱讀 ...

快速上手 GitLab 安裝與首次使用設定:以 Ubuntu 22.04 LTS 為例

今天我嘗試把 GitLab 安裝到我的 Ubuntu 22.04 LTS 作業系統中,過程頗為順利,安裝體驗還不錯,我也特別記錄下完整的安裝設定過程,並透過這篇文章分享。

... 繼續閱讀 ...

整理各家 OAuth 2.0 平台提供的應用程式授權管理資訊

我們都知道 OAuth 2.0 提供了一系列授權的流程標準,但各家 OAuth 2.0 提供者通常都有各自的授權管理機制,這部分並沒有規範在 OAuth 2.0 規格中,因此不同平台之間的實作差異相當大。今天我以「使用者」的角度來看「授權」這件事,當我們授權給「用戶端」應用程式之後,若想撤銷授權,這篇文章特別整理各個不同平台撤銷權限的主要網址。

... 繼續閱讀 ...

如何用 Docker 快速上手 Keycloak 開發模式

要體驗強大的 Keycloak 這套開源的身分認證與存取管理系統,最簡單的方式莫過於透過 Docker/Podman 執行 Keycloak 的開發模式了。你可以在短時間內就可以架設出一套擁有 OpenID Connect (OIDC) 與 OAuth 2.0 提供者的完整實作,是一套功能強大同時又免費的解決方案。這篇文章我就來描述一下 Keycloak 啟動與初始化設定的過程。

... 繼續閱讀 ...

ASP.NET Core Web API 遭遇 No route matches the supplied values 的問題

在開發 ASP․NET Core Web API 的 [HttpPost] 動作方法用來建立資料時,我們可以使用 CreatedAtActionCreatedAtRoute 來回應訊息,但是可能會遇到 No route matches the supplied values 的問題,這篇文章我來說說問題發生的原因與解決方案。

... 繼續閱讀 ...

如何透過 Angular CLI 快速將專案全部都轉換成獨立元件架構

從 Angular 14 開始,全新架構獨立元件(Standalone Component)騰空出世,帶給 Angular 開發者一個全新感受,用更簡潔的程式碼、更清晰的架構,幫助開發人員架構元件與管理元件之間的依賴關係。而從 Angular 15.2.0 開始,更提供了一個 Schematics (程式碼產生器與編修工具) 可以幫助你快速移轉傳統元件獨立元件,甚至於可以連同 AppComponent 也一併轉換成獨立元件,讓整個 Angular 應用程式都變成以獨立元件為主。這篇文章我來說說這套工具的使用方式!

... 繼續閱讀 ...

LINE Login 簽發的 ID Token 如何用 ES256 非對稱加密演算法的公開金鑰驗證

我前陣子在研究 LINE Login 使用的 ES256 非對稱加密演算法,當我透過 OpenId Connect 拿到 ID Token 後,我想拿 LINE Login 提供的 JWKs 金鑰組來驗證其有效性,這篇文章我打算分享如何用 C# 搭配 LINE Login 提供的 JWKs 金鑰組來驗證其有效性!

... 繼續閱讀 ...

第一次設定 Google 雲端服務與 OAuth 2.0 Client IDs 的注意事項

要透過 Google Cloud Platform (GCP) 的 OAuth 2.0 Client IDs 存取任何 Google 雲端服務,除了要走過 OAuth 2.0 的授權流程外,每個服務都需要事先啟用才能使用。除此之外,你還需要設定 CONSENT SCREEN 才行,這篇文章我打算來解說第一次設定 Google 服務與 OAuth 2.0 Client IDs 的注意事項。

... 繼續閱讀 ...

如何用 Angular CLI 與 .NET CLI 快速建立 Monorepo 專案

我們漸漸在不同專案中嘗試 Monorepo 架構,讓前後端分離的專案中可以共用同一個 Repo 來進行專案開發與管理。今天這篇文章我就簡單分享如何利用 Angular CLI 與 .NET CLI 來快速打造一個 Monorepo 的專案。

... 繼續閱讀 ...