Zuul丢失Cookie的解决方案 转

举报
隔壁老汪 发表于 2022/06/23 23:58:05 2022/06/23
【摘要】 我们是使用spring cloud zuul作为api-gateway实践中,发现默认zuul会过滤掉cookie等header信息,有些业务场景需要传递这些信息该怎么处理呢? 处理方式   在api-gateway的application.properties文件中添加 zuul.sensitive-he...

我们是使用spring cloud zuul作为api-gateway实践中,发现默认zuul会过滤掉cookie等header信息,有些业务场景需要传递这些信息该怎么处理呢?
处理方式   在api-gateway的application.properties文件中添加 zuul.sensitive-headers=  
问题原因
          负责根据ServiceId来路由的RibbonRoutingFilter在route之前会调用ProxyRequestHelper的buildZuulRequestHeaders(request)来重新组装一个新的Header

          

           在buildZuulRequestHeaders方法中会对RequsetHeader中的每一项调用isIncludedHeader(name)来判断当前项是否应该留在新的Header中,如下图,如果当前项在IGNORED_HEADERS(需要忽略的信息)中,就不会在新header中保留。

    

           PreDecorationFilter过滤器会调用ProxyRequestHelper的addIgnoredHeaders方法把敏感信息(ZuulProperties的sensitiveHeaders属性)添加到请求上下文的IGNORED_HEADERS中

         sensitiveHeaders的默认值初始值是"Cookie", "Set-Cookie", "Authorization"这三项,可以看到Cookie被列为了敏感信息,所以不会放到新header中
--------------------- 
作者:凌霄羽 
来源:CSDN 
原文:https://blog.csdn.net/lindan1984/article/details/79308396 
版权声明:本文为博主原创文章,转载请附上博文链接!

文章来源: blog.csdn.net,作者:隔壁老瓦,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/wxb880114/article/details/84031187

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。