springcloud-gateway获取应用响应信息乱码

客户端通过springcloud gateway跳转访问tongweb上的应用,接口响应信息乱码。使用postman直接访问tongweb上的应用,响应信息显示正常。

用户gateway中自定义了实现GlobalFilter的Filter类,在该类中获取了上游应用接口的响应信息,直接将byte数组转换成字符串。此时如果上游应用响应信息是压缩过的,那么直接转换后就会变成乱码。

解决此问题有以下两个方法:

1、上游应用服务器关闭压缩

2、自定义Filter类获取响应信息后需要先解压缩数据,然后将解压缩后的byte数组转换为字符串。再然后将该字符串转换为byte数组,并压缩该byte数组。具体代码可以参考知识库文档附件ResponseLogGlobalFilter.java。

备注:

用户使用嵌入版E6_P10,尝试设置server.compression.enabled=false关闭压缩不起作用。反编译代码后发现tongweb Compression.enabled默认是true,这个是有问题的。NAS上获取P10/11/12反编译看此值默认都是false,推测给用户的嵌入版包有问题。

相关推荐
怒放吧德德4 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆6 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
心之语歌8 小时前
基于注解+拦截器的API动态路由实现方案
java·后端
华仔啊9 小时前
Stream 代码越写越难看?JDFrame 让 Java 逻辑回归优雅
java·后端
ray_liang10 小时前
用六边形架构与整洁架构对比是伪命题?
java·架构
Ray Liang11 小时前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
Java水解11 小时前
Java 中间件:Dubbo 服务降级(Mock 机制)
java·后端
SimonKing15 小时前
OpenCode AI辅助编程,不一样的编程思路,不写一行代码
java·后端·程序员
FastBean15 小时前
Jackson View Extension Spring Boot Starter
java·后端
Seven9717 小时前
剑指offer-79、最⻓不含重复字符的⼦字符串
java