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

embedded/2024/12/20 7:53:46/

客户端通过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,推测给用户的嵌入版包有问题。


http://www.ppmy.cn/embedded/147221.html

相关文章

BlueLM:以2.6万亿token铸就7B参数超大规模语言模型

一、介绍 BlueLM 是由 vivo AI 全球研究院自主研发的大规模预训练语言模型,本次发布包含 7B 基础 (base) 模型和 7B 对话 (chat) 模型,同时我们开源了支持 32K 的长文本基础 (base) 模型和对话 (chat) 模型。 更大量的优质数据 :高质量语料…

推动数字金融高质量发展行动方案之数据安全解读

一、《方案》中的数据安全要求 2024年11月27日,中国人民银行等七部门联合印发《推动数字金融高质量发展行动方案》(以下简称《方案》),明确提出系统推进金融机构数字化转型、运用数字技术提升重点领域金融服务质效、夯实数字金融发展基础、完善数字金融治理体系等方面的重…

网络安全(4)_网络层安全IPSec

5. 网络层安全IPSec 5.1 IPSec协议 (1)前面使用Outlook进行数字签名和数字加密是应用层实现的安全。安全套接字实现的安全是在应用层和传输层之间插入了一层来实现数据通信安全。而IPSec是网络层实现的安全。不需要应用程序的支持,只要配置…

使用 Puppeteer 快速上手 Node.js 爬虫

使用 Puppeteer 库通过自动化浏览器来访问百度图片搜索,并在搜索结果中下载图片。代码分为两部分: 自动化浏览器任务:使用 Puppeteer 浏览百度图片搜索并获取图片 URL。图片下载:检查图片 URL 类型(base64 或 URL&…

arcgisPro将面要素转成CAD多段线

1、说明:正常使用【导出为CAD】工具,则导出的是CAD三维多线段,无法进行编辑操作、读取面积等。这是因为要素面中包含Z值,导出则为三维多线段数据。需要利用【复制要素】工具禁用M值和Z值,再导出为CAD,则得到…

使用支持向量机(SVM)实现二分类

前言: 支持向量机(Support Vector Machine,SVM)是一种监督式学习的机器学习算法,主要用于分类和回归分析。其基本思想是在特征空间中找到一个最优的超平面,将不同类别的数据点尽可能地分开。在分类问题中,这个超平面能够使两类数据点之间的间隔(Margin)最大化。 我认…

在 Linux 系统中,让 apt 使用 HTTP 代理

在 Linux 系统中,要让 apt 使用 HTTP 代理,有几种方法可以实现: ### 1. 临时设置代理 你可以通过设置环境变量来临时为 apt 命令设置代理。这种方法不需要修改任何配置文件,只需在命令行中设置环境变量即可。例如: …

新华三OSPF学习

OSPF-基配置演示 ospf dr-priority #修改竞选DR优先级 R1 [R1]interface g0/0/0 [R1-GigabitEthernet0/0/0]ip add 192.168.1.254 24 [R1-GigabitEthernet0/0/0]interface g0/0/1 [R1-GigabitEthernet0/0/1]ip add 10.1.12.1 24 [R1-GigabitEthernet0/0/1]interface g0/0/2…