場景
公司領導腦門子一熱,要求做一個電商平台,還必須用上最新的微服務架構。於是架構師小劉,就開始了微服務架構的搭建。
電商平台少不了用戶表、訂單表、產品表等。業務就是用戶登錄、查看商品列表、下單、付款、收貨,就先以這么個基本需求,搭建一個簡單框架吧。
商城
新建一個MVC的項目,名字為:Tmail,解決方案的名字也跟着變為Tmail。
API服務
以Order的業務為基礎,在當前解決方案內,新建一個API項目:OrderService,這就是我們的第一個微服務。注意:這里選擇API項目
啟動微服務:
需要給微服務增加安全機制,直接上流程圖:
從上圖可知,我們還需要新建一個AuthCenter的項目,這里稍等下,我們先把order服務搞定,按照流程圖的步驟:
(1)綁定授權中心、增加授權策略
(2)開啟授權機制
(3)給需要驗證授權的接口設置授權策略
鑒權中心
(1)下載IdentityServer4模板項目
隨便找個文件夾,shift+鼠標右鍵,選擇powershell,輸入:
dotnet new is4inmem --name AuthService
執行完畢以下文件
(2)在解決方案中添加該項目
(3)在Startup.cs文件中,增加授權鏈機制
(4)在config類中,配置授權資源、授權鏈、授權用戶
商城調用微服務
(1)HomeController里面,寫GetToken的方法
注意,圖片上的地址是API網關的地址,你需要把這個地址改為鑒權中心的地址
(2)HomeController里面,寫GetOrder的方法
注意:這里把gateWayAddress的地址改為:鑒權中心項目的地址。(這里后期都會改為API網關的地址);還有要把_commonHelp去掉,我用了一些通用類,方便其他類調用,不可能每個頁面都寫一遍gettoken的實現。
(3)調用GetOrder
(4)頁面綁定數據
(5)啟動商城項目(注意,微服務、鑒權中心,這兩個項目都要保持啟動)