2022-11-02
成都 杭州 南京
斷言
斷言的作用就是做boolean判斷,為true則代表符合當(dāng)前的路由,會(huì)轉(zhuǎn)發(fā)到對(duì)應(yīng)的地址,Gateway 提供了很多斷言的方式,可以讓我們對(duì)請求進(jìn)行匹配映射,并且可以多種斷言同時(shí)使用
斷言語法: 方式=值
2.1 Path斷言
當(dāng)請求的地址匹配當(dāng)前path的時(shí)候會(huì)執(zhí)行當(dāng)前路由
predicates:
-Path=/mg
示例,下面的斷言方式和這里一樣
spring:
application:
name: gateway
cloud:
gateway:
routes:
- id: 08consumer-eureka-feign # 當(dāng)前路由策略的唯一ID,可以隨便寫,但是如果出現(xiàn)多個(gè)id,必須唯一
uri: http://localhost:12000 #當(dāng)前路由指向的真實(shí)地址,這個(gè)地址是不是最終真實(shí)地址,最終地址會(huì)拼接上訪問地址
predicates: #配置斷言, 符合下面斷言的請求會(huì)轉(zhuǎn)發(fā)到上面的url,斷言很多種條件
- Path=/order/** #斷言的條件是請求的地址符合這個(gè)表達(dá)式,注意格式為Path=/order/**
2.2 Query斷言
參數(shù)值可以寫正則,也可以只寫參數(shù)名,在傳遞了符合的參數(shù)名和值之后會(huì)轉(zhuǎn)發(fā)到對(duì)應(yīng)的url
predicates:
- Query=name,ba. #要求必須傳遞一個(gè)參數(shù)名叫name 值為ba開頭的數(shù)據(jù) .是匹配一個(gè)字符 *匹配N個(gè)相同的字符 , .*可以匹配任何內(nèi)容
2.3 Method斷言
當(dāng)請求方式匹配的時(shí)候執(zhí)行當(dāng)前路由
predicates:
- Method=get
2.4 Host斷言
當(dāng)是通過指定域名訪問當(dāng)前網(wǎng)關(guān)的時(shí)候執(zhí)行對(duì)應(yīng)的路由
predicates:
- Host=localhost:8080
2.5 Cookie斷言
當(dāng)包含某個(gè)cookie和值的時(shí)候執(zhí)行
predicates:
- Cookie=name,yiming
2.6 Header斷言
當(dāng)包含某個(gè)header和對(duì)應(yīng)的值的時(shí)候執(zhí)行
predicates:
- Header=reqId,9090\d+ #正則表達(dá)式\d+ 數(shù)字
2.7 Weight 權(quán)重路由
權(quán)重是將相同的請求分配到不同的服務(wù)器, Weight后的第一個(gè)參數(shù)一致的時(shí)候通過后面的數(shù)字按照比例分配請求
- id: weight2 #這個(gè)id唯一即可
2.9 Before 時(shí)間路由
指定一個(gè)時(shí)間,在當(dāng)前時(shí)間之前可以訪問,可以用于定時(shí)停機(jī)
predicates:
- Before=2022-04-19T00:05:00.789+08:00[Asia/Shanghai]
2.10 After 時(shí)間路由
指定一個(gè)時(shí)間,在當(dāng)前時(shí)間之后可以訪問,可以用于定時(shí)開啟
predicates:
- After=2022-04-19T00:05:00.789+08:00[Asia/Shanghai]
2.11 Between時(shí)間區(qū)間路由
在指定的時(shí)間區(qū)間內(nèi)可以訪問
predicates: - Between=2021-04-19T00:05:00.789+08:00[Asia/Shanghai],2022-04-19T00:05:00.789+08:00[Asia/Shanghai]
2.12 RemoteAddr
必須來自于某個(gè)地址發(fā)起的請求才可以訪問
predicates:
- Between=2021-04-19T00:05:00.789+08:00[Asia/Shanghai],2022-04-19T00:05:00.789+08:00[Asia/Shanghai]
開班時(shí)間:2021-04-12(深圳)
開班盛況開班時(shí)間:2021-05-17(北京)
開班盛況開班時(shí)間:2021-03-22(杭州)
開班盛況開班時(shí)間:2021-04-26(北京)
開班盛況開班時(shí)間:2021-05-10(北京)
開班盛況開班時(shí)間:2021-02-22(北京)
開班盛況開班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開班時(shí)間:2020-09-21(上海)
開班盛況開班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開班時(shí)間:2019-07-22(北京)
開班盛況Copyright 2011-2023 北京千鋒互聯(lián)科技有限公司 .All Right 京ICP備12003911號(hào)-5 京公網(wǎng)安備 11010802035720號(hào)