cocobear9  
一枚普通的zisuer(lll¬ω¬),努力每天多学一点点
 else if(method.getName().equals("getParameterMap")){
                    Map<String,String[]> map = (Map<String, String[]>) method.invoke(req, args);
                    if(map!=null){
                        for (String s : list) {
                            for (String key : map.keySet()) {
                                if(map.get(key)[0].contains(s)){
                                    map.get(key)[0]= map.get(key)[0].replace(s,"***");
                                }
                            }
                        }
                    }
                    return map;
                }
                //不是就传递真实对象,和args数组
                return method.invoke(req, args);
            }
        });
        //2.放行!注意这时候穿proxy_req 在Servlet调用getParameter方法才会走增强的逻辑!
        chain.doFilter(proxy_req, resp);

注意contain()两头的位置,是大包小

 

 

 [笨蛋, 坏蛋, fuck]

输出:

key=name,value=zhang
key=msg,value=***zhang

 

posted on 2020-09-08 20:04  cocobear9  阅读(468)  评论(1编辑  收藏  举报