package com.webportals.commons.uri;
import com.webportals.commons.uri.UrlWriterFactory.UrlResult;
import org.apache.commons.lang.StringUtils;
import javax.servlet.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
public class UrlWriterFilter implements Filter {
    @Override
    public void doFilter(ServletRequest request, ServletResponse response,
                         FilterChain chain) throws IOException, ServletException {
        HttpServletRequest httpServletRequest = (HttpServletRequest) request;
        HttpServletResponse httpServletResponse = (HttpServletResponse) response;
        String requestURL = httpServletRequest.getRequestURL().toString();
        UrlResult urlResult = UrlWriterFactory.getUrlResult(requestURL);
        if (null != urlResult && StringUtils.isNotBlank(urlResult.getUrl())) {
            String realPath = urlResult.getUrl();
            if (urlResult.isFlag()) {
                httpServletResponse.sendRedirect(realPath);
                return;
            } else {
                if (!realPath.startsWith("/")) {
                    realPath = "/" + realPath;
                }
                httpServletRequest.getRequestDispatcher(realPath).forward(request, response);
                return;
            }
        } else {
            chain.doFilter(request, response);
        }
    }
    @Override
    public void destroy() {
    }
    @Override
    public void init(FilterConfig arg0) throws ServletException {
    }
}
最近下载更多
                
                hawear     LV1
                2019年1月14日
            
            
        
                mim哒哒哒     LV1
                2018年9月3日
            
            
        
                chengqiang     LV13
                2018年5月27日
            
            
        
                z_kkkkk     LV1
                2017年9月15日
            
            
        
                czczicheng     LV6
                2017年9月14日
            
            
        
                qijian0503     LV5
                2017年3月1日
            
            
        
                msl1010895047     LV12
                2016年12月20日
            
            
        
                yp_zhou     LV6
                2016年7月12日
            
            
        
                dengjianbin     LV2
                2016年5月9日
            
            
        
                a4w     LV1
                2015年8月10日
            
            
        
    
                
最近浏览
    