首先前端改用为encodeURI()来传递参数,比如
encodeURI(itemName.value)
然后后端使用一个正则表达式来进行判断,是特殊符号能通过,比如:
itemName = itemName.replaceAll("%(?![0-9a-fA-F]{2})", "%25");
最后后端使用URLDecoder.docode()来进行接前端的参数并解析,比如:
itemName = URLDecoder.decode(itemName);
这样就可以接收前端带有特殊符号的参数了
适用场景:多用于条件查询,前端输入带符号的条件,后端接收不到的情况