|
@ -0,0 +1,50 @@
|
|
|
package com.yihu.wlyy.interceptors;
|
|
|
|
|
|
import net.sf.json.JSONObject;
|
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.web.context.request.RequestContextHolder;
|
|
|
import org.springframework.web.context.request.ServletRequestAttributes;
|
|
|
|
|
|
import javax.servlet.*;
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import java.io.IOException;
|
|
|
import java.net.URLDecoder;
|
|
|
import java.util.Map;
|
|
|
|
|
|
/**
|
|
|
* Created by chenweida on 2017/8/22.
|
|
|
*/
|
|
|
@Component
|
|
|
public class EncodingFilter implements Filter {
|
|
|
|
|
|
private Logger logger= LoggerFactory.getLogger(EncodingFilter.class);
|
|
|
|
|
|
@Override
|
|
|
public void init(FilterConfig filterConfig) throws ServletException {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void doFilter(ServletRequest servletRequest, ServletResponse response, FilterChain chain) throws IOException, ServletException {
|
|
|
HttpServletRequest request = (HttpServletRequest) servletRequest;
|
|
|
Map<String, String[]> params = request.getParameterMap();
|
|
|
MutableHttpServletRequest newRequest = new MutableHttpServletRequest(request);
|
|
|
newRequest.getParameterNames();
|
|
|
for (String key : params.keySet()) {
|
|
|
String[] values = params.get(key);
|
|
|
for (int i = 0; i < values.length; i++) {
|
|
|
String value = values[i];
|
|
|
newRequest.removeAttribute(key);
|
|
|
newRequest.addParameter(key, URLDecoder.decode((value),"utf-8"));
|
|
|
}
|
|
|
}
|
|
|
chain.doFilter(newRequest, response);
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void destroy() {
|
|
|
|
|
|
}
|
|
|
}
|