解决springcloud Zuul丢失Cookie的问题

springcloud 配置智能路由zuul 后 转发请求指定的方法后会导致 cookie 无法获取的问题,主要解决方法是

再application 配置文件中加入 sensitive-headers:

zuul:
routes:
yyxt:
path: /**
serviceId: com.modou.dpt
sensitive-headers:
custom-sensitive-headers: true

我的是这样的,具体原理是zuul 中 sensitiveHeaders的默认值初始值是"Cookie", "Set-Cookie", "Authorization"这三项,可以看到Cookie被列为了敏感信息,所以不会放到新header中。

补充知识:Spring Cloud 使用 eureka格式返回问题

创建Spring Cloud 项目过程中发现 ,加入eucker后 ,格式的返回变成了xml格式,除非在每个方法上去定义返回格式为json,这样肯定不是一个好的方法,经过对比与查阅资料发现

1.下面的作为提供服务,返回的是json格式

   <dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-eureka</artifactId>
  </dependency>

2.下面的作为u注册服务,返回xml格式

 <dependencies>
  <dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-eureka-server</artifactId>
  </dependency>
 </dependencies>

在每个基础服务使用第一种,则会返回json格式

以上这篇解决springcloud Zuul丢失Cookie的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Spring Cloud Zuul集成Swagger实现过程解析

    Spring Cloud Zuul 集成Swagger 1.准备服务注册中心eureka-server 2.创建微服务swagger-service-a step1. 创建微服务swagger-service-a(Spring Boot项目),添加eureka-client起步依赖,web起步依赖 和swagger依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>s

  • SpringCloud Zuul实现动态路由

    前言 Zuul 是在Spring Cloud Netflix平台上提供动态路由,监控,弹性,安全等边缘服务的框架,是Netflix基于jvm的路由器和服务器端负载均衡器,相当于是设备和 Netflix 流应用的 Web 网站后端所有请求的前门.本文基于上篇(SpringCloud系列--Ribbon 负载均衡)实现Zuul动态路由 GitHub地址:https://github.com/Netflix/zuul 官方文档:https://cloud.spring.io/spring-cloud-

  • SpringCloud Zuul网关功能实现解析

    简介 API Gateway,时系统的唯一对外的入口,介于客户端和服务端之间的中间层,处理非业务功能, 提供路由请求,鉴权,监控,缓存,限流等功能 统一接入 智能路由 AB测试.灰度测试 负载均衡.容灾处理 日志埋点(类似 Nignx日志) 流量监控 限流处理 服务降级 安全防护 鉴权处理 监控 机器网终隔离 1.添加依赖 注意SpringBoot和SpringCloud版本兼容 <dependency> <groupId>org.springframework.cloud<

  • SpringCloud Zuul过滤器实现登陆鉴权代码实例

    1.新建一个filter'包 2.新建一个类,实现ZuulFilter,重写里面的方法 3.在顶部类添加注解,@Component,让Spring扫描 /** * 登陆过滤器 */ @Component public class LoginFilter extends ZuulFilter { @Override public String filterType() { //前置过滤器 return PRE_TYPE; } @Override public int filterOrder() {

  • SpringCloud Zuul基本使用方法汇总

    SpringCloud Zuul 是SpringCloud系列的网关实现,具有均衡负载,将非业务性校验剥离出来,使微服务专注于业务的一个组件 使用Zuul网关后,所有的请求都通过网络进行转发,所以所有的请求都隐藏了自己的主机及端口信息,而是统一使用Zuul网关的主机及端口号作为请求入口,Zuul网关在收到请求后,会根据serviceId自动发现目标微服务地址,然后将请求转发到目标微服务上进行处理. Zuul仍然是开箱即用工具系列,因此仍然适用4部曲套路: 1. 引入依赖: spring-clou

  • SpringCloud Zuul过滤器和谷歌Gauva实现限流

    前提: 已经配置Zuul网关 参考: https://www.jb51.net/article/182894.htm 限流方式: 1)nginx层限流 2)网关层限流 1.添加限流过滤器 import com.alibaba.fastjson.JSON; import com.google.common.util.concurrent.RateLimiter; import com.netflix.zuul.ZuulFilter; import com.netflix.zuul.context.

  • 解决springcloud Zuul丢失Cookie的问题

    springcloud 配置智能路由zuul 后 转发请求指定的方法后会导致 cookie 无法获取的问题,主要解决方法是 再application 配置文件中加入 sensitive-headers: zuul: routes: yyxt: path: /** serviceId: com.modou.dpt sensitive-headers: custom-sensitive-headers: true 我的是这样的,具体原理是zuul 中 sensitiveHeaders的默认值初始值是

  • 解决Android webview设置cookie和cookie丢失的问题

    Android页面嵌套了一个h5,H5页面内部有用户登陆页面,发现h5页面的登陆功能无法使用,一直登陆失败.和web那边商量一会,发现js写入的cookie丢失了.所有需要Android这边在重写写入一次. mWebView = view.findViewById(R.id.mall_view); settings = mWebView.getSettings(); settings.setJavaScriptEnabled(true); settings.setLoadsImagesAutom

  • SpringCloud zuul 网关如何解决跨域问题

    跨域 在SpringCloud中 zuul 和springboot 要同时配置才能实现网关处理跨域 解决Access to XMLHttpRequest at 'http://192.168.2.173:8001/energy-base/groupType/getPageByType?timestamp=1557886425725' from origin 'http://localhost:3000' has been blocked by CORS policy: The 'Access-C

  • Feign调用服务时丢失Cookie和Header信息的解决方案

    目录 Feign调用服务丢失Cookie和Header信息 服务调用方 服务接受方 Feign调用存在的问题 ①feign远程调用丢失请求头 ②异步调用Feign丢失上下文问题 Feign调用服务丢失Cookie和Header信息 今天在使用Feign调用其他微服务的接口时,发现了一个问题:因为我的项目采用了无状态登录,token信息是存放在cookie中的,所以调用接口时,因为cookie中没有token信息,我的请求被拦截器拦截了.  参考几篇文章,靠谱的解决方法是:将cookie信息放到请

  • SpringCloud Zuul在何种情况下使用Hystrix及问题小结

    首先,引入spring-cloud-starter-zuul之后会间接引入: hystrix依赖已经引入,那么何种情况下使用hystrix呢? 在Zuul的自动配置类ZuulServerAutoConfiguration和ZuulProxyAutoConfiguration中总共会向Spring容器注入3个Zuul的RouteFilter,分别是 •SimpleHostRoutingFilter 简单路由,通过HttpClient向预定的URL发送请求 生效条件: RequestContext.

  • SpringCloud Zuul的使用简介

    目录 简介 使用 简介 Zuul是Spring Cloud全家桶中的微服务API网关. 所有从设备或网站来的请求都会经过Zuul到达后端的Netflix应用程序 Zuul 主要提供路由(请求转发)和过滤 Zuul 最终会注入Eureka 提供: 代理,过滤和路由三大功能 使用 导入依赖 <!--zuul组件.zuul需要注册至eureka中--> <dependency> <groupId>org.springframework.cloud</groupId>

  • 青龙面板拉库解决没有或丢失依赖can‘t find module的保姆级教程(附青龙面板脚本仓库)

    目录 1.青龙面板拉库 2.分享收集的青龙面板脚本仓库,建议选择拉一个就可以了 3.安装脚本所需要的依赖库 4.设置环境变量 5.拉取单个文件,依赖修复方法 如何拉库: 拉取单个脚本 使用方法: 拉库出现的问题及解决方案 解决办法: 方法1)复制对应缺失的<module名称>.js或.py到库文件夹 方法2)完善ql repo命令的依赖部分,重新运行拉库命令: 6.结尾 没有安装青龙面板的先看我另外一篇教程2022年青龙面板部署完整版教程(多图) 1.青龙面板拉库 先把配置文件config.s

  • 解决springcloud阿里云OSS文件访问跨域问题的实现

    目录 引言 解决 引言 最近在高德地图中引用阿里云OSS存储的图片时,出现跨域访问问题,特此记录,以方便后续同学参考 解决 1.在阿里云OSS后台管理中,进入权限管理,进入跨域设置,添加跨域规则,设置来源为* 2.至此配置完成后访问图片还是会出现跨域问题,这是因为OSS文件默认会开启缓存,及后续访问的实际上是缓存的文件,这就会导致不能匹配到我们上述配置的跨域规则 于是我们需要将缓存禁用掉,如果文件就一两个的话,可以直接在后台中设置禁用缓存,将HTTP头中Cache-Control设置为no-ca

  • 解决SpringCloud Feign异步调用传参问题

    背景 各个子系统之间通过feign调用,每个服务提供方需要验证每个请求header里的token. public void invokeFeign() throws Exception { feignService1.method(); feignService2.method(); feignService3.method(); .... } 定义拦截每次发送feign调用拦截器RequestInterceptor的子类,每次发送feign请求前将token带入请求头 @Configurati

随机推荐