zuul使用簡說
zuul路由的幾個配置引數
1.靜態路由
zuul:
routes:
myroute1:
path: /mypath/**
url: (注意這裡url要http://開頭)
2.靜態路由+ribbon負載均衡/故障切換
zuul:
routes:
myroutes1:
path: /mypath/**
serviceId: myserverId
myserverId:
ribbon:
listOfServers: localhost:8080, localhost:8081
ribbon:
eureka:
enabled: false
3.動態路由+ribbon負載均衡/故障切換
zuul:
routes:
myroutes1:
path: /mypath/**
serviceId: myserviceId
eureka:
client:
serviceUrl:
defaultZne:xxx
4.路由匹配的一些配置
stripPrefix=true,轉發會過濾掉字首。
path: /myusers/**,預設時轉發到服務的請求是/**,如果stripPrefix=false,轉發的請求是/myusers/**
zuul.prefix=/api 會對所有的path增加一個/api字首
ignoredPatterns: /**/admin/** 過濾掉匹配的url
route:
users: /myusers/** 會匹配所有/myusers/**的url,但由於ignoredPatterns, /myusers/**/admin/**的請求不會被轉發,而是直接由zuul裡的介面接收
匹配順序
path:/myusers/**
path:/** 如果是在application.yml中配置的,那麼會優先匹配/myusers/**
但如果是applicaiton.properties配置的,那麼可能導致/myusers/**被/**覆蓋
ignored-Services: '*' 對於自動發現的services,除了route中明確指定的,其他都會被忽略
5.請求頭過濾
route.sensitiveHeaders: Cookie,Set-Cookie,Authorization
預設就有這三個請求頭,意思是不向下游轉發請求這幾個頭
zuul.ignoredHeaders 是一個全域性設定,而route.sensitiveHeaders是區域性設定
zuul過濾器
標準的zuul過濾器有4中,分別對應一次路由轉發的幾個關鍵點;
pre: 在路由轉發之前起作用
routing: 在路由時其作用
post: 在把結果返回給瀏覽器時起作用
error: 在整個路由階段,出現異常時起作用
如果要分析前端傳來的引數,驗證前端身份等對前端引數的操作,顯然是用pre過濾器
如果是要對返回給前端的結果進行操作或者分析,顯然是用post過濾器
編寫自定義路由器
public class MyFilter extends ZuulFilter{
filterType() 重寫,返回這個過濾器的型別
filterOrder() 重寫,返回這個過濾器在過濾器鏈的順序
shouldFilter() true啟動
run() 具體邏輯
}
然後向Spring注入這個Bean就行了
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952307/viewspace-2680656/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- jarsigner 簡單使用說明JAR
- VI 命令簡易使用說明
- 簡要的CKeditor使用說明
- Zuul系列Zuul
- Zuul使用Ribbon配置自動重試Zuul
- ASIHTTPRequest類庫簡介和使用說明HTTP
- SQLServer 遊標簡介與使用說明SQLServer
- 簡單說說Restful APIRESTAPI
- Zuul- 呼叫Zuul
- 簡說websocketWeb
- js 快捷鍵大全,並有簡單使用說明JS
- SpringCloud之zuulSpringGCCloudZuul
- SpringCloud(三) ZuulSpringGCCloudZuul
- Zuul- 啟動Zuul
- Flutter外掛之webview_flutter簡要使用說明FlutterWebView
- 簡單說說iOS之WKWebView的用法iOSWebView
- 簡單說說ES6新特性
- 簡單說說linux關機命令Linux
- 簡單說說webpack的配置檔案Web
- 簡單說說PHP優化那些事PHP優化
- 微服務看門神-Zuul微服務Zuul
- Zuul路由閘道器Zuul路由
- Zuul- 路由載入Zuul路由
- 8、Spring Cloud ZuulSpringCloudZuul
- 簡說PHP之MVCPHPMVC
- 正規表示式單行、多行模式簡介(使用說明)模式
- 先簡單說一說Java中的CopyOnWriteArrayListJava
- 簡單說說U-boot的修改(轉)boot
- 史上最簡單的 SpringCloud 教程 | 第五篇: 路由閘道器 (zuul)SpringGCCloud路由Zuul
- Spring Cloud 之 Zuul.SpringCloudZuul
- SpringCloud解析之Zuul(二)SpringGCCloudZuul
- SpringCloud解析之Zuul(一)SpringGCCloudZuul
- zuul 自定義路由規則Zuul路由
- Spring Cloud Zuul中使用Swagger彙總API介面文件SpringCloudZuulSwaggerAPI
- 簡單說區塊鏈區塊鏈
- 誰說 JavaScript 簡單的?JavaScript
- sqlmap簡單中文說明SQL
- 簡單說說Java 定時任務框架---QuartzJava框架quartz