| | |
| | | public Object validSign(ProceedingJoinPoint joinPoint) throws Throwable { |
| | | ServletRequestAttributes servletContainer = (ServletRequestAttributes) RequestContextHolder |
| | | .getRequestAttributes(); |
| | | PrintWriter out = servletContainer.getResponse().getWriter(); |
| | | |
| | | HttpServletRequest request = servletContainer.getRequest(); |
| | | Map<String, String[]> paramsMap = request.getParameterMap(); |
| | | Map<String, String[]> pm = request.getParameterMap(); |
| | | Map<String, String> paramsMap = new HashMap<>(); |
| | | for (Iterator<String> its = pm.keySet().iterator(); its.hasNext(); ) { |
| | | String key = its.next(); |
| | | paramsMap.put(key, pm.get(key)[0]); |
| | | } |
| | | |
| | | |
| | | List<String> dataSource = new ArrayList<>(); |
| | | for (Iterator<String> its = paramsMap.keySet().iterator(); its.hasNext(); ) { |
| | | String key = its.next(); |
| | | if (!key.equalsIgnoreCase("sign")) { |
| | | dataSource.add(key + "=" + paramsMap.get(key).toString()); |
| | | dataSource.add(key + "=" + paramsMap.get(key)); |
| | | } |
| | | } |
| | | Collections.sort(dataSource); |
| | | String src = StringUtil.concat(dataSource, "&") + SECRET; |
| | | String sign = StringUtil.Md5(src); |
| | | |
| | | String sign = StringUtil.Md5(StringUtil.concat(dataSource, "&") + SECRET); |
| | | |
| | | if (!sign.equalsIgnoreCase(paramsMap.get("sign") + "")) { |
| | | if (!sign.equalsIgnoreCase(paramsMap.get("sign"))) { |
| | | PrintWriter out = servletContainer.getResponse().getWriter(); |
| | | //签名出错 |
| | | out.print(JsonUtil.loadFalseResult(-1, "签名出错")); |
| | | out.close(); |