日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Spring Cloud Gateway 路由转发之After(Before)路由断言工厂使用

發(fā)布時間:2023/12/10 javascript 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spring Cloud Gateway 路由转发之After(Before)路由断言工厂使用 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言


本文旨在介紹After(Before)路由斷言工廠使用,以此類推可以使用其他路由斷言工廠

案例


1、概念

網(wǎng)關(guān)簡單的說就是提供一個對外統(tǒng)一的API入口和出口,統(tǒng)管企業(yè)對外的所有API出口。一般來說,網(wǎng)關(guān)對外暴露的URL或者接口信息, 我們統(tǒng)稱之為路由信息。如果研發(fā)過網(wǎng)關(guān)中間件,或者使用或了解過ZUUL的,網(wǎng)關(guān)的核心肯定是Filter以及FilterChain(Filter責(zé)任鏈)。 Spring Cloud Gateway也具有路由信息和Filter。下面介紹一下Spring Cloud gateway中最重要的幾個概念---引用自http://xujin.org/sc/gw/gw04/ 復(fù)制代碼 路由(route):路由是網(wǎng)關(guān)最基礎(chǔ)的部分,路由信息由一個ID、一個目的url、一組斷言工廠和一組Filter組成。如果路由斷言工廠為真,則說明請求的Url和配置的路由匹配。 復(fù)制代碼斷言(Predicate): java 8中的斷言函數(shù)。Spring Cloud Gateway中的斷言函數(shù)輸入類型是Spring 5.0框架中的ServerWebExchange。Spring Cloud Gateway中的斷言函數(shù)允許開發(fā)者去定義匹配來自于http request中的任何信息,比如請求頭和參數(shù)等。 復(fù)制代碼過濾器(filter):一個標(biāo)準(zhǔn)的Spring webFilter。Spring Cloud Gateway中的Filter分為兩種類型的Filter,分別是Gateway Filter和Global Filter.網(wǎng)關(guān) Filter實例是由Spring 框架中的網(wǎng)關(guān)Filter的特殊工廠構(gòu)造。request在轉(zhuǎn)發(fā)到目前服務(wù)之前,response在返回到調(diào)用端之前都可以被修改或者自定義。 復(fù)制代碼

2、什么是After(Before)路由斷言?
Before路由斷言工廠帶有一個UTC時間格式的時間參數(shù),當(dāng)請求進(jìn)來的當(dāng)前時間在路由斷言工廠之前會成功匹配,否則不能成功匹配。
After路由斷言工廠帶有一個UTC時間格式的時間參數(shù),當(dāng)請求進(jìn)來的當(dāng)前時間在路由斷言工廠之后會成功匹配,否則不能成功匹配。

3、案例
在Spring Cloud Gateway 路由轉(zhuǎn)發(fā)案例基礎(chǔ)上修改application.yml文件中斷言配置

server:port: 9001 spring:application:name: service-agatewaycloud:nacos:discovery:server-addr: 127.0.0.1:8848#將此服務(wù)設(shè)置為網(wǎng)關(guān)gateway:discovery:locator:enabled: trueroutes:#路由名稱- id: consumer_route#跳轉(zhuǎn)路由uri: http://www.scnunanshen.online/#斷言,設(shè)置攔截條件predicates:- After=2018-03-18T17:32:58.129+08:00[Asia/Shanghai] #此處為After斷言工廠,表示在該時間之后的請求都將跳轉(zhuǎn)到uri 復(fù)制代碼

4、其他斷言工廠

  • 通過Cookie信息配置
  • 通過Header屬性匹配
  • 通過Host主機匹配
  • 通過請求方式匹配
  • 通過請求參數(shù)匹配
  • 以上方式組合使用

示例:參數(shù)匹配方式

server:port: 9001 spring:application:name: service-agatewaycloud:nacos:discovery:server-addr: 127.0.0.1:8848#將此服務(wù)設(shè)置為網(wǎng)關(guān)gateway:discovery:locator:enabled: trueroutes:#路由名稱- id: consumer_route#跳轉(zhuǎn)路由uri: http://www.scnunanshen.online/#斷言,設(shè)置攔截條件predicates:- Query=nan#此處表示設(shè)置當(dāng)訪問url中存在nan屬性時,路由才會匹配 #http://localhost:9001/aa?nan=1訪問 ,斷言為真路由匹配。#也可以同時設(shè)置屬性跟值如:- Query=nan,2 #當(dāng)路由匹配nan=2時,才會被攔截 復(fù)制代碼

轉(zhuǎn)載于:https://juejin.im/post/5c87704de51d4539d9565ddc

總結(jié)

以上是生活随笔為你收集整理的Spring Cloud Gateway 路由转发之After(Before)路由断言工厂使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。