LiJun
2018-11-26 3fe8e1b6efe824c4ab3853fba27f185724825bdc
屏蔽跨域访问和进入登陆页面查询导航数据
2个文件已修改
20 ■■■■ 已修改文件
gx_tieta/src/com/fgkj/Filters/CrossDomainLimitFilter.java 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
gx_tieta/src/com/fgkj/Filters/HotlinkFilter.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
gx_tieta/src/com/fgkj/Filters/CrossDomainLimitFilter.java
@@ -12,6 +12,7 @@
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.fgkj.actions.ActionUtil;
import com.fgkj.dto.ServiceModel;
@@ -26,21 +27,30 @@
        HttpServletRequest request=(HttpServletRequest)req;
        String URL=request.getRequestURI();
        //检测跨域访问的请求
        if(URL != null && URL.endsWith("_ky")){
        if(URL != null && URL.endsWith("_ky") && false){
            String key = req.getParameter("key");                                        //获取校验码
            ServiceModel model = new ServiceModel();                                    //是否允许访问
            boolean isAlowVisit = false;                            
            System.out.println(key+"=="+CROSS_DOMAIN_KEY);
            if(key != null && CROSS_DOMAIN_KEY.equals(key)){
                //System.out.println("开始休眠500毫秒秒");
                try {
                    Thread.sleep(500);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                } finally{
                    //System.out.println("休眠结束.....");
                }
                SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                System.out.println("跨域访问域名或ip:"+request.getRemoteHost()+" At "+sdf.format(new Date()));
                
                isAlowVisit = true;
            }else{
                model.setMsg("识别码错误");
                model.setMsg("校验码发送失败");
            }            
            if(isAlowVisit){
                //通过请求
                chain.doFilter(request, response);
                chain.doFilter(request, response);        //不允许跨域
            }else{
                //不能放行的请求
                PrintWriter out = response.getWriter();
@@ -51,6 +61,8 @@
        }else{
            //非跨域请求
            chain.doFilter(request, response);
            //SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
            //System.out.println("非跨域请求不允许放行"+request.getRemoteHost()+" At "+sdf.format(new Date()));
        }
        
    }
gx_tieta/src/com/fgkj/Filters/HotlinkFilter.java
@@ -108,7 +108,7 @@
            flag=true;
            if("login.jsp".equalsIgnoreCase(source)){
                //进入登录页面的时候查询导航数组并且将其存入session
                new CustompageAction().searchAll();
                //new CustompageAction().searchAll();
            }
        }else{        
            List<Custompage> custompages = (List<Custompage>) ActionUtil.getSession().getAttribute("custompages");