Struts2一次请求参数问题的记录

最近,一次前端正常请求,但后台出现请求参数值的变化,导致报错,问题如下:

从入参request中查看请求参数,是一个Json字符串,其中有个description的键值对

但是,接下来调用resquest的getParatemer() ,取值参数值时,却发现json字符串数值变了,凭空多出来一个deion的键值对,如下图:

进而导致后续的Json解析报错:

因为在代码逻辑中,未对此数值进行额外的处理逻辑,正常不会变化才对,查看getParatemer()方法的源码,发现本地有两处进行了重写:

分别进入两个对应的Fliter中:

第一个没有发现什么修改逻辑;

第二个Filer中,发现未防止Xss注入,对请求进行了处理,在图中第二个标注出,对数值中script的全文替换,导致了上述问题,json中的description被替换后就成了deion。

发现此问题后,对此替换逻辑,进行了优化(可以选判断下script边界再做替换,或者其他方法),问题解决。

相关推荐
该昵称用户已存在17 小时前
从成本中心到价值引擎:MyEMS 开源系统激活企业能源数据资产
java·后端·struts
Xxtaoaooo2 天前
DolphinDB工业物联网实时分析:从海量数据困局到毫秒级预警的技术突围
物联网·struts·servlet·工业物联网·dolphindb
互联网推荐官3 天前
上海物联网应用开发技术路径深度拆解:协议接入、数据架构与平台选型实战指南
物联网·struts·架构·软件工程
智慧物业老杨5 天前
老旧小区团购模式下的数智化工单体系搭建与实践——基于保利项目600+工单的技术落地解析
java·人工智能·后端·科技·struts
echola_mendes12 天前
InfluxDB(四)——动态 Field/Tag 实现多类型设备统一接入的完整实践指南
java·后端·struts
鉴生Eric19 天前
拉孚BMA系统物联网架构:全面赋能传统楼宇BA系统的数字化转型
java·后端·struts
TaoSense25 天前
全球消费类家庭安防监控行业深度研究报告:AI 驱动下的产业变革与投资机遇
java·人工智能·struts
七夜zippoe1 个月前
DolphinDB脚本语言:从入门到精通
后端·struts·脚本·语言·dolphindb
好家伙VCC1 个月前
**TEE在嵌入式安全中的应用实践:基于ARM TrustZone的加密存储方案设计与实现*
java·arm开发·python·struts·安全
纸鸢|1 个月前
从“一锤子买卖“到“持续价值共生“:物联网软件产品如何做到“叫好又叫座“
java·物联网·struts