一、什麼是API網關 API網關是一個伺服器,是系統對外的唯一入口。API網關封裝了系統內部架構,為每個客戶端提供一個定製的API。API網關方式的核心要點是,所有的客戶端和消費端都通過統一的網關接入微服務,在網關層處理所有的非業務功能。通常,網關也是提供REST/HTTP的訪問API。服務端通過A ...
一、什麼是API網關
API網關是一個伺服器,是系統對外的唯一入口。API網關封裝了系統內部架構,為每個客戶端提供一個定製的API。API網關方式的核心要點是,所有的客戶端和消費端都通過統一的網關接入微服務,在網關層處理所有的非業務功能。通常,網關也是提供REST/HTTP的訪問API。服務端通過API-GW註冊和管理服務。
二、網關的職責
網關具有的職責,如身份驗證、監控、負載均衡、緩存、請求分片與管理、靜態響應處理。當然,最主要的職責還是與“外界聯繫”。
三、surging的網關架構設計
https://www.cnblogs.com/fanliang11/p/7441281.html
四、surging的網關使用
1.配置
在surging網關的configs文件下有三個配置。appsettings:自定義的配置。cacheSettings:緩存的配置。gatewaySettings:網關配置。
gatewaySettings 配置:
1 { 2 "AccessTokenExpireTimeSpan": "30",//token過期時間,單位分鐘 3 "AuthorizationRoutePath": "api/userapp/authentication",//token服務驗證方法 4 "AuthorizationServiceKey": "UserApp",//服務對應的ModuleName 5 "TokenEndpointPath": "api/oauth2/token",//token請求對外路徑 6 "CacheMode": "ddlCache.Redis", //MemoryCache or gateway.Redis save token(緩存配置) 7 //跨域配置 8 "AccessPolicy": { 9 "Origins": [ "http://127.0.0.1:1927", "http://localhost:927" ], 10 "AllowAnyHeader": true, 11 "AllowAnyMethod": true 12 }, 13 //註冊中心配置(zookeeper或者consul) 14 "Register": { 15 "Provider": "Consul", 16 "Address": "127.0.0.1:8500" 17 }, 18 //服務聚合配置 19 "ServicePart": { 20 "MainPath": "part/service/aggregation", 21 "EnableAuthorization": false, 22 "Services": [ 23 { 24 "ServiceAggregation": [ 25 { 26 "RoutePath": "api/user/GetUserName", 27 "ServiceKey": "User", 28 "Key": "Users" 29 }, 30 { 31 "RoutePath": "api/user/GetUserName", 32 "ServiceKey": "User", 33 "Key": "Roles" 34 } 35 ], 36 "UrlMapping": "part/user/getuserrole" 37 } 38 ] 39 } 40 }
2.將網關發佈。
3.將服務啟動
4.瀏覽網頁(以下表示成功)
5.請求token jwt模式(postman)
Content-Type:application/json
請求參數:input 是api/userapp/authentication方法對應的參數名稱。裡面的對象是你真正的要傳的參數對象
如上圖就表示token請求成功