当前位置: 首页 > news >正文

自己做的网站地址手机怎么打不开站长之家最新域名查询

自己做的网站地址手机怎么打不开,站长之家最新域名查询,国企网站建设,网站制作公司资质Spring Cloud Gateway提供了一个在Spring生态系统之上构建的API网关,包括:Spring 5,Spring Boot 2和Project Reactor。Spring Cloud Gateway旨在提供一种简单而有效的路由方式,并为它们提供一些网关基本功能,例如&…

         Spring Cloud Gateway提供了一个在Spring生态系统之上构建的API网关,包括:Spring 5,Spring Boot 2和Project Reactor。Spring Cloud Gateway旨在提供一种简单而有效的路由方式,并为它们提供一些网关基本功能,例如:安全,监控/指标和弹性。

         下面我们分别以两个例子说明:

一. 版本说明

Spring Boot版本:2.2.5.RELEASE

Spring Cloud版本:Hoxton.SR3

如无特殊说明,Spring Cloud的所有例程都将采用上面的版本。

二. 网关的使用

建议:在本课程开始前,如果不懂Eureka创建的详细步骤,建议先看【一个实例学会 Spring Cloud 的注册中心 Eureka 的用法】,没有看过也没关系,按照下面步骤开始吧:

1. 新建父项目

1.1 如果你没有父项目(如果已经完成注册中心的实例肯定有父项目啦),请使用简单Maven创建父项目:

1.2. 创建好后,打开pom.xml文件,加入如下代码:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>org.cherry</groupId><artifactId>springcloudproject</artifactId><version>1.0-SNAPSHOT</version><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>14</java.version><spring-cloud.version>Hoxton.SR3</spring-cloud.version><springboot.version>2.2.5.RELEASE</springboot.version></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${springboot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>
</project>

 1.3. 删除src文件夹

2. 创建网关子项目

2.1 在父项目下面,使用Spring Initializr新建网关子项目gateway,选择依赖Gateway,简略贴图如下:

建好后,修改pom.xml文件,修改后文件如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>springcloudproject</artifactId><groupId>com.cherry</groupId><version>1.0-SNAPSHOT</version><!-- <groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.2.6.RELEASE</version><relativePath/> &lt;!&ndash; lookup parent from repository &ndash;&gt;--></parent><groupId>com.cherry</groupId><artifactId>gateway</artifactId><version>0.0.1-SNAPSHOT</version><name>gateway</name><description>Demo project for Spring Boot</description><!--<properties><java.version>1.8</java.version><spring-cloud.version>Hoxton.SR3</spring-cloud.version></properties>--><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope><exclusions><exclusion><groupId>org.junit.vintage</groupId><artifactId>junit-vintage-engine</artifactId></exclusion></exclusions></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>

2.2 修改配置文件application.properties后缀为yml(即文件名改为application.yml),对网关进行配置

这里我们将csdn博客作为服务提供方

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833

2.3 执行run,springboot内置Tomcat启动,端口9001

2.4 浏览器输入地址http://localhost:9001/huanzi833

3. 关闭网关

如果希望网关不可用,可在application.yml加入下面设置:

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833enabled: false

浏览器访问,结果如下:

 4. 通过时间匹配路由规则

注意:属性文件修改后,请自行重启应用,后面就不每次重复说明了

4.1 时间After路由匹配

在After设置的时间之后路由生效,如:在2020年1月1日之后的请求都转发到我的博客,这个时间之前的不能转发

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833- After=2020-01-01T00:00:00+08:00[Asia/Shanghai]enabled: true

4.2  时间Before路由匹配

在Before设置的时间之前的路由生效,如:在2021年1月1日之前的请求都转发到我的博客,这个时间之后的不能转发

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833- After=2020-01-01T00:00:00+08:00[Asia/Shanghai]- Before=Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]enabled: true

4.3  时间Between路由匹配

在Between设置的时间之间的路由生效,如:在2020年1月1日至2020年10月1日之间的请求都转发到我的博客,这个时间以外的不能转发,通常Between与After及Before不会一起使用,以免重复设置。

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833
#            - After=2019-01-01T00:00:00+08:00[Asia/Shanghai]
#            - Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]- Between=2020-01-01T00:00:00+08:00[Asia/Shanghai], 2020-10-01T00:00:00+08:00[Asia/Shanghai]enabled: true

 4.4 Cookie路由匹配

对于Cookie,predicates可以接收两个参数,一个是 Cookie name ,一个是正则表达式,路由规则会通过获取对应的 Cookie name 值和正则表达式去匹配,如果匹配上就会执行路由,如果没有匹配上则不执行。

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833
#            - After=2019-01-01T00:00:00+08:00[Asia/Shanghai]
#            - Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]- Between=2020-01-01T00:00:00+08:00[Asia/Shanghai], 2020-10-01T00:00:00+08:00[Asia/Shanghai]- Cookie=uid, cherry #通过cookie进行路由规则的匹配enabled: true

 使用Cookie路由匹配,我们可以进入cmd进行测试,cmd中输入如下语句:

 4.6 Header路由匹配

类似于Cookie路由匹配,也是2个参数,一个参数名称,一个正则表达式,如果匹配上就会执行路由,如果没有匹配上则不执行。

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833
#            - After=2019-01-01T00:00:00+08:00[Asia/Shanghai]
#            - Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]- Between=2020-01-01T00:00:00+08:00[Asia/Shanghai], 2020-10-01T00:00:00+08:00[Asia/Shanghai]- Cookie=uid, cherry #通过cookie进行路由规则的匹配- Header=X-Request-Id, \d+ #Header路由规则enabled: true

 进入cmd进行测试,cmd中输入如下语句:

4.7  Host路由匹配

以下配置通过主机地址进行匹配,如www.csdn.net,或者www.baidu.com,或者blog.csdn.net等地址

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833
#            - After=2019-01-01T00:00:00+08:00[Asia/Shanghai]
#            - Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]- Between=2020-01-01T00:00:00+08:00[Asia/Shanghai], 2020-10-01T00:00:00+08:00[Asia/Shanghai]- Cookie=uid, cherry #通过cookie进行路由规则的匹配- Header=X-Request-Id, \d+ #Header路由规则- Host=**.csdn.net, **.baidu.com #Host路由规则enabled: true

进入cmd进行测试,cmd中输入如下语句:

4.8 Method匹配路由

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833
#            - After=2019-01-01T00:00:00+08:00[Asia/Shanghai]
#            - Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]- Between=2020-01-01T00:00:00+08:00[Asia/Shanghai], 2020-10-01T00:00:00+08:00[Asia/Shanghai]- Cookie=uid, cherry #通过cookie进行路由规则的匹配- Header=X-Request-Id, \d+ #Header路由规则- Host=**.csdn.net, **.baidu.com #Host路由规则- Method=GET, POST #Method路由规则enabled: true

 进入cmd进行Get测试,cmd中输入如下语句:

进入cmd进行POST测试,cmd中输入如下语句: (注:如果服务提供者controller中路径使用GetMapping,调用时这里使用-X POST会出404)

4.9 IP地址匹配

predicate 也支持通过设置某个 ip 区间号段的请求进行路由,例如 192.168.1.1/24 (其中 192.168.1.1 是 IP 地址,24 是子网掩码,这里的24表示子网掩码是255.255.255.0)。可以将此地址设置为本机的 ip 地址进行测试。

server:port: 9001spring:application:name: gatewaycloud:gateway:routes:- id: gateway-serviceuri: https://blog.csdn.netpredicates:- Path=/huanzi833
#            - After=2019-01-01T00:00:00+08:00[Asia/Shanghai]
#            - Before=2021-01-01T00:00:00+08:00[Asia/Shanghai]- Between=2020-01-01T00:00:00+08:00[Asia/Shanghai], 2020-10-01T00:00:00+08:00[Asia/Shanghai]- Cookie=uid, cherry #通过cookie进行路由规则的匹配- Header=X-Request-Id, \d+ #Header路由规则- Host=**.csdn.net, **.baidu.com #Host路由规则- Method=GET, POST #Method路由规则- RemoteAddr=192.168.1.1/24enabled: true

4.10 路径路由匹配/参数匹配/权重匹配将在下面与注册中心的集成中完成。

三. 下面开始将使网关服务化,并与注册中心、服务者、消费者进行关联

1. 首先创建服务中心Eureka,代码如下:

http://www.tj-hxxt.cn/news/66936.html

相关文章:

  • 专注昆明网站建设蚁坊软件舆情监测系统
  • 天津如何做百度的网站免费域名申请个人网站
  • 网站做SEO优化9个广州seo推广神技
  • asp.net 网站计数器网络营销案例100例
  • 网站 模板 下载百度站长工具综合查询
  • 建立微信公众号的流程东莞seo靠谱
  • asp.net 做网站竞价恶意点击犯法吗
  • 做动态网站需要什么软件大数据营销系统软件
  • 网上做网站广告投放百分百营销软件官网
  • Myeclipse怎么做网站seo免费
  • 公司装修设计图片网站排名优化首页
  • 网站使用微信支付鞍山seo外包
  • 沈阳男科医院哪家好收费合理企业新网站seo推广
  • 成都网站推广找四川冠辰海外推广是做什么的
  • 百度推广对网站的好处广告公司经营范围
  • 东莞专业做外贸网站的公司国内高清视频素材网站推荐
  • 公司网站开发实训报告优化大师百科
  • 手机做网站教程windows10优化工具
  • html5 开发网站永久免费自助建站平台
  • 怎么看一个网站做的好不好企业全网推广公司
  • 个人模板图片seo求职信息
  • 河南省人民政府网站下载百度地图2022最新版
  • 评价一个网站设计项目的好坏快速seo排名优化
  • WordPress文章数据表西安seo关键词排名
  • 开源网站程序软文范例800字
  • 有关于网站开发的参考文献seo网络排名优化
  • 怎么样可以自己做网站自媒体平台有哪些
  • 搭建网站的网站分销平台
  • 微信怎么做淘客网站东莞好的网站国外站建设价格
  • 静态页面网站怎么做网络媒体