SpringCloud Gateway Https设置 以Http 转发 路由 给后台微服务

本文介绍了如何在SpringCloud Gateway中处理接收到的HTTPS请求,并将其转换为HTTP请求转发给后台微服务。由于默认情况下,Gateway不会自动进行这种转换,所以需要自定义过滤器来实现。此外,文章还提到了Gateway与Zuul在路由前缀处理上的区别,Zuul会自动删除路由前缀,而Gateway则需要额外配置路径改写过滤器来实现相同功能。
摘要由CSDN通过智能技术生成

Spring Cloud  Gateway接收到https请求,根据路由规则转发给后台微服务,但是默认情况下,转发给后台微服务时,仍然是https请求,这就要求后台微服务需要配置ssl,并且每台服务器都需要有域名,这名下是不太实际的,正常情况下,一个网站只有对外拍路的网关是通过域名访问,转发给后台微服务时,则是采用IP地址。

SpringCloud  Zuul默认情况下就会帮我们实现https转换为http,gatewy需要我们自行添加可过滤器实现转换:

我只是个搬砖的,参考大佬博客:
https://www.jianshu.com/p/5a36129399f2

这位大佬分析了源码,并给出了解决方案:

 SpringCloud  Gateway  https请求 转换为http 路由给后台微服务

添加过滤器:

import static org.springframework.cloud.gateway.support.ServerWebExchangeUtils.GATEWAY_REQUEST_URL_ATTR;

import java.net.URI;

import org.springframework.cloud.gateway.filter.GatewayFilterChain;
import org.springframework.cloud.gateway.filter.GlobalFilter;
import org.springframework.core.Ordered;
import org.springframework.stereotype.Component
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值