Commit 4dcf484e by huluobin

update

parent ef7424a6
package com.gogirl.infrastructure.common.filter;
import com.gogirl.infrastructure.common.wrapper.RequestBakRequestWrapper;
import org.springframework.boot.web.servlet.ServletComponentScan;
import org.springframework.stereotype.Component;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
/**
* 对request请求进行包装备份请求参数
*
* @author robbendev
*/
@Component
@ServletComponentScan
@WebFilter(urlPatterns = "/*", filterName = "requestBakFilter")
public class RequestBakFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
HttpServletRequest servletRequest = (HttpServletRequest) request;
RequestBakRequestWrapper requestWrapper = new RequestBakRequestWrapper(servletRequest);
chain.doFilter(requestWrapper, response);
}
@Override
public void destroy() {
}
}
package com.gogirl.infrastructure.common.wrapper;
import javax.servlet.ReadListener;
import javax.servlet.ServletInputStream;
import java.io.ByteArrayInputStream;
/**
* Request 备份流
*
* @author robbendev
*/
public class RequestBakInputStream extends ServletInputStream {
private ByteArrayInputStream byteArrayInputStream = null;
public RequestBakInputStream(ByteArrayInputStream byteArrayInputStream) {
this.byteArrayInputStream = byteArrayInputStream;
}
@Override
public int read() {
if (this.byteArrayInputStream != null) {
return byteArrayInputStream.read();
}
return 0;
}
public boolean isFinished() {
return true;
}
public boolean isReady() {
return (this.byteArrayInputStream != null);
}
public void setReadListener(ReadListener readListener) {
}
}
package com.gogirl.infrastructure.common.wrapper;
import javax.servlet.ServletInputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import java.io.*;
import java.util.Map;
/**
* 备份request中的请求内容
*
* @author robbendev
*/
public class RequestBakRequestWrapper extends HttpServletRequestWrapper {
/**
* 备份的request请求信息
*/
private final ByteArrayOutputStream cachedContent = new ByteArrayOutputStream(1024);
private ServletInputStream inputStream;
private BufferedReader reader;
private Map<String, String[]> parameterMap;
/**
* 对request中的流进行备份
*
* @param request
* @throws IOException
*/
public RequestBakRequestWrapper(HttpServletRequest request) throws IOException {
super(request);
this.parameterMap = request.getParameterMap();
// 将request中的输入流读入字节数组输出流中
byte[] buffer = new byte[1024];
int len;
while ((len = request.getInputStream().read(buffer)) > -1) {
cachedContent.write(buffer, 0, len);
}
cachedContent.flush();
// 设置输入流为备份流
this.inputStream = new RequestBakInputStream(new ByteArrayInputStream(cachedContent.toByteArray()));
}
@Override
public ServletInputStream getInputStream() throws IOException {
return this.inputStream;
}
@Override
public String getCharacterEncoding() {
String characterEncoding = super.getCharacterEncoding();
return (characterEncoding != null ? characterEncoding : "ISO-8859-1");
}
@Override
public BufferedReader getReader() throws IOException {
if (this.reader == null) {
this.reader = new BufferedReader(new InputStreamReader(this.inputStream, getCharacterEncoding()));
}
return this.reader;
}
/**
* 返回流中的byte字节数组信息
*
* @return byte
*/
public byte[] getContentAsByteArray() {
return this.cachedContent.toByteArray();
}
@Override
public String getParameter(String name) {
if (this.parameterMap != null) {
String[] params = this.parameterMap.get(name);
if (params != null && params.length > 0) {
return params[0];
}
}
return null;
}
@Override
public Map<String, String[]> getParameterMap() {
return parameterMap;
}
}
...@@ -126,15 +126,7 @@ public class MvcInterceptorConfig extends WebMvcConfigurationSupport { ...@@ -126,15 +126,7 @@ public class MvcInterceptorConfig extends WebMvcConfigurationSupport {
super.addInterceptors(registry); super.addInterceptors(registry);
} }
//
// https://t.begogirls.com/customer/produce/queryProduceDetail2?id=265&token=1240914668441079809
// https://t.begogirls.com/customer/shop/queryShopForPage?pageNum=1&pageSize=10&longitude=113.36199&latitude=23.12463&token=1240914668441079809
// https://t.begogirls.com/customer/mallCart/listMallShoppingCart
// https://t.begogirls.com/customer/queryPageLeisureScheduleServe
// https://t.begogirls.com/customer/getMyCoupon?state=1&token=1240914668441079809
// https://t.begogirls.com/customer/timescard/getMyTimesCardList?token=1240914668441079809
// https://t.begogirls.com/customer/selectAllDiscount?token=1240914668441079809
// https://t.begogirls.com/customer/xcx/getUserInfo?token=1240914668441079809
@Override @Override
public void addResourceHandlers(ResourceHandlerRegistry registry) { public void addResourceHandlers(ResourceHandlerRegistry registry) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment