Spring Cloud Gateway去掉url前缀
Spring Cloud Gateway去掉url前缀
主要是增加一个 route,其他配置不变
routes: - id: service_customer uri: lb://CONSUMER order: 0 predicates: - Path=/customer/** filters: - StripPrefix=1 - AddResponseHeader=X-Response-Default-Foo, Default-Bar
新增的StripPrefix可以接受一个非负整数,对应的具体实现是StripPrefixGatewayFilterFactory,从名字就可以看出它的作用是去掉前缀的,那个整数即对应层数。
具体到本例中,我们通过 Spring Cloud Gateway 访问 /customer/hello/windmt,那么当网关服务向后转发请求时,会去掉/customer,微服务收到的就是/hello/windmt。
Spring Cloud中eureka.instance为前缀的的常用配置参数说明
参数名 | 说明 | 默认值 |
---|---|---|
preferIpAddress | 是否优先使用IP地址作为主机名的标识 | false |
leaseRenewalIntervalInSeconds | Eureka客户端向服务端发送心跳的时间间隔,单位为秒 | 30 |
leaseExpirationDurationInSeconds | Eureka服务端在收到最后一次心跳之后等待的时间上限,单位为秒。超过该时间之后服务端会将该服务实例从服务清单中剔除,从而禁止服务调用请求被发送到该示例上 | 90 |
nonSecurePort | 非安全的通信端口号 | 80 |
securePort | 安全的通信端口号 | 443 |
nonSecurePortEnabled | 是否启用非安全的通信端口号 | true |
securePortEnabled | 是否启用安全的通信端口号 | |
appname | 服务名,默认取spring.application.name的配置值 | unkonwn |
hostname | 主机名,不配置的时候将根据操作系统的主机名来获取 |
注意:
org.springframework.cloud.netflix.eureka.EurekaInstanceConfigBean
类中,可以查看各个参数的默认值。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
详解SpringCloud Gateway之过滤器GatewayFilter
在Spring-Cloud-Gateway之请求处理流程文中我们了解最终网关是将请求交给过滤器链表进行处理,接下来我们阅读Spring-Cloud-Gateway的整个过滤器类结构以及主要功能 通过源码可以看到Spring-Cloud-Gateway的filter包中吉接口有如下三个,GatewayFilter,GlobalFilter,GatewayFilterChain,下来我依次阅读接口的主要实现功能. GatewayFilterChain 类图 代码 /** * 网关过滤链表接口 * 用
-
spring cloud zuul修改请求url的方法
前言 在日常开发中,除了修改请求参数.设置响应header,响应body外,还有一种需求就是url重新,或者是修改url,这里简述一下怎么在zuul修改url.话不多说了,来一起看看详细的介绍吧. 转发配置 demo: ribbon: NIWSServerListClassName: com.netflix.loadbalancer.ConfigurationBasedServerList listOfServers: 192.168.99.100,192.168.99.101 zuul: ro
-
spring cloud gateway 如何修改请求路径Path
一.背景 项目升级改造,老项目使用请求url中特定参数进行服务路由,现使用gateway网关进行路由服务信息 二.根据参数信息修改请求路径Path @Component public class RequestFilter implements GlobalFilter, Ordered { @Override public Mono<Void> filter(ServerWebExchange exchange, GatewayFilterChain chain) { ServerHttpR
-
spring cloud gateway使用 uri: lb://方式配置时,服务名的特殊要求
在gateway中配置uri配置有三种方式,包括 第一种:ws(websocket)方式: uri: ws://localhost:9000 第二种:http方式: uri: http://localhost:8130/ 第三种:lb(注册中心中服务名字)方式: uri: lb://brilliance-consumer 其中ws和http方式不容易出错,因为http格式比较固定,但是lb方式比较灵活自由.不考虑网关,只考虑服务时,服务名命名时比较自由,都能启动被访问,被注册到注册中心,但是如果
-
spring cloud gateway请求跨域问题解决方案
这篇文章主要介绍了spring cloud gateway请求跨域问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 代码如下 @Configuration public class CorsConfig implements GlobalFilter, Ordered { private static final String ALL = "*"; private static final String MAX_AGE =
-
Spring Cloud Gateway去掉url前缀
Spring Cloud Gateway去掉url前缀 主要是增加一个 route,其他配置不变 routes: - id: service_customer uri: lb://CONSUMER order: 0 predicates: - Path=/customer/** filters: - StripPrefix=1 - AddResponseHeader=X-Response-Default-Foo, Default-Bar 新增的StripPrefix可以接受一个非负整数,对应的具
-
Spring Cloud Gateway使用Token验证详解
引入依赖 <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <ty
-
Spring Cloud Gateway 默认的filter功能和执行顺序介绍
目录 Spring Cloud Gateway 默认的filter功能和执行顺序 有效性 调试方法 filters(按执行顺序) spring cloud gateway之filter实战 1.filter的作用和生命周期 2.AddRequestHeader GatewayFilter Factory Spring Cloud Gateway 默认的filter功能和执行顺序 有效性 Spring Cloud Gateway 2.0.0.RELEASE 调试方法 新建一个GlobalFilte
-
Spring Cloud Gateway整合sentinel 实现流控熔断的问题
目录 一.什么是网关限流: 二.gateway 整合 sentinel 实现网关限流: 三.sentinel 网关流控规则的介绍: 3.1.网关流控规则: 3.2.API 分组管理: 四.sentinel 网关流控实现的原理: 五.网关限流了,服务就安全了吗? 六.自定义流控异常消息: 一.什么是网关限流: 在微服务架构中,网关层可以屏蔽外部服务直接对内部服务进行调用,对内部服务起到隔离保护的作用,网关限流,顾名思义,就是通过网关层对服务进行限流,从而达到保护后端服务的作用. Sentinel
-
Spring Cloud Gateway 整合 knife4j 聚合接口文档功能
当系统中微服务数量越来越多时,如果任由这些服务散落在各处,那么最终管理每个项目的接口文档将是一件十分麻烦的事情,单是记住所有微服务的接口文档访问地址就是一件苦差事了.当如果能够将所有微服务项目的接口文档都统一汇总在同一个可视化页面,那么将大大减少我们的接口文档管理维护工作,为此,我们可以基于 Spring Cloud Gateway 网关 + nacos + knife4j 对所有微服务项目的接口文档进行聚合,从而实现我们想要的文档管理功能 注:本案例需要 springboot 提前整合 nac
-
基于OpenID Connect及Token Relay实现Spring Cloud Gateway
目录 前言 实现 Keycloak 网关 依赖项 代码 配置 测试 资源服务器 依赖项 代码 配置 测试 结论 前言 当与Spring Security 5.2+ 和 OpenID Provider(如KeyClope)结合使用时,可以快速为OAuth2资源服务器设置和保护Spring Cloud Gateway. Spring Cloud Gateway旨在提供一种简单而有效的方式来路由到API,并为API提供跨领域的关注点,如:安全性.监控/指标和弹性. 我们认为这种组合是一种很有前途的基于
-
Spring Cloud Gateway替代zuul作为API网关的方法
目录 第一,pom文件 第二,项目结构 第三,项目代码和运行截图 运行效果图 参考文档: 本文简要介绍如何使用Spring Cloud Gateway 作为API 网关(不是使用zuul作为网关),关于Spring Cloud Gateway和zuul的性能比较本文不再赘述,基本可以肯定Spring Cloud Finchley版本的gateway比zuul 1.x系列的性能和功能整体要好. 特别提醒:Spring Cloud Finchley版本中,即使你引入了spring-cloud-sta
-
阿里Sentinel支持Spring Cloud Gateway的实现
1. 前言 4月25号,Sentinel 1.6.0 正式发布,带来 Spring Cloud Gateway 支持.控制台登录功能.改进的热点限流和注解 fallback 等多项新特性,该出手时就出手,紧跟时代潮流,昨天刚发布,今天我就要给大家分享下如何使用! 2. 介绍(本段来自Sentinel文档) Sentinel 1.6.0 引入了 Sentinel API Gateway Adapter Common 模块,此模块中包含网关限流的规则和自定义 API 的实体和管理逻辑: Gatewa
-
Spring Cloud Gateway入门解读
Spring Cloud Gateway介绍 前段时间刚刚发布了Spring Boot 2正式版,Spring Cloud Gateway基于Spring Boot 2,是Spring Cloud的全新项目,该项目提供了一个构建在Spring 生态之上的API网关,包括:Spring 5,Spring Boot 2和Project Reactor. Spring Cloud Gateway旨在提供一种简单而有效的途径来发送API,并为他们提供横切关注点,例如:安全性,监控/指标和弹性.当前最新的
随机推荐
- AngularJS压缩JS技巧分析
- 深入解析Go语言编程中的递归使用
- SqlServer 2005/2008数据库被标记为“可疑”的解决办法
- iOS中模态Model视图跳转和Push视图跳转的需求实现方法
- php mssql 日期出现中文字符的解决方法
- jQuery调用AJAX时Get和post公用的乱码解决方法实例说明
- 简单使用Python自动生成文章
- Python的条件语句与运算符优先级详解
- Eclipse 安装 SVN 在线插件教程
- Golang的循环中break和continue语句的用法讲解
- jquery ajax传递中文参数乱码问题及解决方法说明
- php提取身份证号码中的生日日期以及验证是否为成年人的函数
- java中关于内部类的使用详解
- Mysql全局ID生成方法
- Java/Android引用类型及其使用全面分析
- java 中模拟TCP传输的客户端和服务端实例详解
- Java整型数与网络字节序byte[]数组转换关系详解
- python 自动重连wifi windows的方法
- Android 优化之卡顿优化的实现
- vue中的适配px2rem示例代码