ASP.NET Core Web API/Minimal API微服務開發實務範例、如何使用REST Client測試Minimal API
作者:高光弘 精誠資訊/恆逸教育訓練中心資深講師
在現代軟體開發中,建立可靈活擴展且易於維護的應用程式是一個關鍵挑戰。為了滿足這些需求,許多開發者轉向微服務架構,並使用Web API/Minimal API作為開發和部署應用程式的實作手段。
Minimal API是一種以簡單、直觀的方式建立輕量級Web API的方法。相較於傳統的Web API,Minimal API更加精簡,減少了冗餘程式碼和配置,使開發者能夠專注於實現核心商業邏輯。
本文將介紹如何使用REST Client來測試Minimal API。REST Client是一個強大的工具,可以幫助開發人員模擬HTTP請求和回應,從而驗證API的正確性和可靠性。
什麼是微服務
微服務是一種架構,將應用程式拆分為一組小型、獨立部署的服務,每個服務都專注於執行特定的商業邏輯。每個微服務都可以獨立開發、部署和擴展,這使得軟體團隊可以更快速地發布新功能。
什麼是Web API
Web API(網路應用程式介面)是一種通過網際網路提供服務的應用程式介面。透過 HTTP協定來進行通信和資料交換。Web API可以作為服務的端點。
什麼是Minimal API
Minimal API相較於Web API,使用更輕量、簡單且直觀的方法,以最小的程式碼和複雜度來實現所需的功能。這種方法通常與特定的開發框架或平台相關,例如ASP.NET Core中的Minimal API。
Minimal API實作開發範例
使用Visual Studo 2022建立【ASP.NET Core Empty】專案,直接在Program.cs實作Category服務。
- /categories傳回所有Category資料
- /categories/{id}傳回指定id對應的Category資料
如何使用REST Client測試Minimal API
Visual Studo 2022在.17.8版之後,提供一個便利的方式可以測試Web API或Minimal API稱為REST Client,只需要在專案加入新項目【HTTP File】就可以使用REST Client進行測試。
由於REST Client進行測試所需要的路徑為絕對路徑,這個資訊可以從專案的【launchSettings.json】取得,注意要依啟動方式找到對應的設定值。
在app.http檔案加入用來測試Minimal API的指令,用###來分隔多個Request
GET http://localhost:5188/categories ### GET http://localhost:5188/categories/1
啟動程式後,點選【Send Request】連接,得到Category集合,資料已轉換成JSON格式。
接著點選第二個測試連結,取得id為1的Category資料。
總結
微服務架構可以使用Web API/Minimal API技術進行實作,Minimal API相較早先的Web API,程式碼部分是更加簡略,不需要Controller。測試Web API/Minimal API的方式,除了可以使用傳統的POSTMAN工具之外,現行的Visual Studio 2022提供另一種便利的測試手段—REST Client,讓Web API/Minimal API的測試更加直覺簡單。
想要以微服務架構實作ASP.NET Core Web API/Minimal API,對傳統使用C#開發人員的挑戰並不小,以下是開發人員應該具備的基礎知識:
1. C#語言:尤其是泛型委派與Lambda運算式。
2. ASP.NET Core:理解Middleware、DI、Routing、Configuration、Logging等基本概念。
3. HTTP協議:了解HTTP方法、狀態碼、標頭和主體等基本知識。
4. RESTful API設計原則:熟悉URI設計、資源定義、HTTP方法使用、狀態碼選擇等設計原則。
5. 資料庫存取:使用ADO.NET或Entity Framework Core對資料庫進行資料處理。
6. Docker:了解Docker可以幫助更輕鬆地部署和運行ASP.NET Core Web API。
由於需要具備的知識多且雜,【UAC399】ASP.NET Core Web API/Minimal API微服務開發實務 課程,即針對以上內容設計,讓開發人員能透過單一課程訓練掌握ASP.NET Core Web API/Minimal API微服務開發實作方法。
如果您已具備C#程式開發經驗,想學習ASP.NET Core Web API的話,【UAC399】ASP.NET
Core Web API/Minimal API微服務開發實務 課程,更是目前最適合您的課程。
0 意見:
張貼留言