- 浏览: 623910 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (819)
- java开发 (110)
- 数据库 (56)
- javascript (30)
- 生活、哲理 (17)
- jquery (36)
- 杂谈 (15)
- linux (62)
- spring (52)
- kafka (11)
- http协议 (22)
- 架构 (18)
- ZooKeeper (18)
- eclipse (13)
- ngork (2)
- dubbo框架 (6)
- Mybatis (9)
- 缓存 (28)
- maven (20)
- MongoDB (3)
- 设计模式 (3)
- shiro (10)
- taokeeper (1)
- 锁和多线程 (3)
- Tomcat7集群 (12)
- Nginx (34)
- nodejs (1)
- MDC (1)
- Netty (7)
- solr (15)
- JSON (8)
- rabbitmq (32)
- disconf (7)
- PowerDesigne (0)
- Spring Boot (31)
- 日志系统 (6)
- erlang (2)
- Swagger (3)
- 测试工具 (3)
- docker (17)
- ELK (2)
- TCC分布式事务 (2)
- marathon (12)
- phpMyAdmin (12)
- git (3)
- Atomix (1)
- Calico (1)
- Lua (7)
- 泛解析 (2)
- OpenResty (2)
- spring mvc (19)
- 前端 (3)
- spring cloud (15)
- Netflix (1)
- zipkin (3)
- JVM 内存模型 (5)
- websocket (1)
- Eureka (4)
- apollo (2)
- idea (2)
- go (1)
- 业务 (0)
- idea开发工具 (1)
最新评论
-
sichunli_030:
对于频繁调用的话,建议采用连接池机制
配置TOMCAT及httpClient的keepalive以高效利用长连接 -
11想念99不见:
你好,我看不太懂。假如我的项目中会频繁调用rest接口,是要用 ...
配置TOMCAT及httpClient的keepalive以高效利用长连接
最近项目使用jQuery easyui 开发,session超时、没有登录直接访问页面需要返回登录页面特殊处理。
说明:测试设置失效时间为1分钟,登录成功后1分钟去点击操作处罚事件,执行①连接到com.lactec.framework.ac.filter.AuthFilter这个类
判断执行的action操作。判断session是否为空,超时就返回,我用的是ajax请求:如果是ajax请求响应头会有,x-requested-with;
设置:rep.setHeader("sessionstatus", "timeout");//在响应头设置session状态
rep.getWriter().print("登录超时!"); //打印一个返回值,没这一行,在tabs页中无法跳出(导航栏能跳出),具体原因不明
前台部分通过 XMLHttpRequest.getResponseHeader("sessionstatus"); //通过XMLHttpRequest取得响应头,给出提示 。
对于项目上线后,会涉及多个服务器,所以跳转要根据服务器IP去跳转问题,解决方案:window.location.host
代码部分:① web.XML部分配置代码
<!-- filter 权限认证 只对amf请求过滤 -->
<filter>
<filter-name>authFilter</filter-name>
<filter-class>com.lactec.framework.ac.filter.AuthFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>authFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<!-- session失效时间是30分钟 -->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
②java代码
public class AuthFilter extends BaseAction implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {
//登陆判断 如果是/crm_web/loginAction.do 登录跳转
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse rep = (HttpServletResponse) response;
//System.out.println(req.getRequestURI());
String uri = req.getRequestURI();//获取登录的action
if(uri.indexOf("loginAction")>=0){
chain.doFilter(request, response);//跳转页面
}else{
//获取登录用户的Session --基础权限检查,用户没有登陆,被拦截或者session超时请重新登录
if(Utils.isNull(req.getSession()) || Utils.isNull(req.getSession().getAttribute("user")) ){
//如果是ajax请求响应头会有,x-requested-with;
if (req.getHeader("x-requested-with") != null && req.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest"))
{
rep.setHeader("sessionstatus", "timeout");//在响应头设置session状态
rep.getWriter().print("登录超时!"); //打印一个返回值,没这一行,在tabs页中无法跳出(导航栏能跳出),具体原因不明
}
return;
}else {
chain.doFilter(request, response);//跳转页面
}
}
}
}
③ JS代码部分
$.ajaxSetup({
error: function (XMLHttpRequest, textStatus, errorThrown){
if(XMLHttpRequest.status==403){
$.messager.alert(‘我的消息‘, ‘您没有权限访问此资源或进行此操作!‘, ‘success‘);
return false;
}
},
complete:function(XMLHttpRequest,textStatus){
var sessionstatus=XMLHttpRequest.getResponseHeader("sessionstatus"); //通过XMLHttpRequest取得响应头,sessionstatus,
if(sessionstatus==‘timeout‘){
//如果超时就处理 ,指定要跳转的页面
var top = getTopWinow(); //获取当前页面的顶层窗口对象
$.messager.alert(‘我的消息‘, ‘登录超时-请重新登录!‘, ‘info‘);
top.location.href = "http://"+window.location.host+"/crm_web/login_new.html"; //跳转到登陆页面
}
}
});
/**
* 在页面中任何嵌套层次的窗口中获取顶层窗口
* @return 当前页面的顶层窗口对象
*/
function getTopWinow(){
var p = window;
while(p != p.parent){
p = p.parent;
}
return p;
}
如有疑问可以直接给我回复。。。。。
jQuery easyui Session 超时返回登录页面
标签:class style log com 代码 使用 http java si
原文:http://www.cnblogs.com/tb176/p/4476415.html
转自:http://www.bubuko.com/infodetail-783058.html
说明:测试设置失效时间为1分钟,登录成功后1分钟去点击操作处罚事件,执行①连接到com.lactec.framework.ac.filter.AuthFilter这个类
判断执行的action操作。判断session是否为空,超时就返回,我用的是ajax请求:如果是ajax请求响应头会有,x-requested-with;
设置:rep.setHeader("sessionstatus", "timeout");//在响应头设置session状态
rep.getWriter().print("登录超时!"); //打印一个返回值,没这一行,在tabs页中无法跳出(导航栏能跳出),具体原因不明
前台部分通过 XMLHttpRequest.getResponseHeader("sessionstatus"); //通过XMLHttpRequest取得响应头,给出提示 。
对于项目上线后,会涉及多个服务器,所以跳转要根据服务器IP去跳转问题,解决方案:window.location.host
代码部分:① web.XML部分配置代码
<!-- filter 权限认证 只对amf请求过滤 -->
<filter>
<filter-name>authFilter</filter-name>
<filter-class>com.lactec.framework.ac.filter.AuthFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>authFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<!-- session失效时间是30分钟 -->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
②java代码
public class AuthFilter extends BaseAction implements Filter {
public void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {
//登陆判断 如果是/crm_web/loginAction.do 登录跳转
HttpServletRequest req = (HttpServletRequest) request;
HttpServletResponse rep = (HttpServletResponse) response;
//System.out.println(req.getRequestURI());
String uri = req.getRequestURI();//获取登录的action
if(uri.indexOf("loginAction")>=0){
chain.doFilter(request, response);//跳转页面
}else{
//获取登录用户的Session --基础权限检查,用户没有登陆,被拦截或者session超时请重新登录
if(Utils.isNull(req.getSession()) || Utils.isNull(req.getSession().getAttribute("user")) ){
//如果是ajax请求响应头会有,x-requested-with;
if (req.getHeader("x-requested-with") != null && req.getHeader("x-requested-with").equalsIgnoreCase("XMLHttpRequest"))
{
rep.setHeader("sessionstatus", "timeout");//在响应头设置session状态
rep.getWriter().print("登录超时!"); //打印一个返回值,没这一行,在tabs页中无法跳出(导航栏能跳出),具体原因不明
}
return;
}else {
chain.doFilter(request, response);//跳转页面
}
}
}
}
③ JS代码部分
$.ajaxSetup({
error: function (XMLHttpRequest, textStatus, errorThrown){
if(XMLHttpRequest.status==403){
$.messager.alert(‘我的消息‘, ‘您没有权限访问此资源或进行此操作!‘, ‘success‘);
return false;
}
},
complete:function(XMLHttpRequest,textStatus){
var sessionstatus=XMLHttpRequest.getResponseHeader("sessionstatus"); //通过XMLHttpRequest取得响应头,sessionstatus,
if(sessionstatus==‘timeout‘){
//如果超时就处理 ,指定要跳转的页面
var top = getTopWinow(); //获取当前页面的顶层窗口对象
$.messager.alert(‘我的消息‘, ‘登录超时-请重新登录!‘, ‘info‘);
top.location.href = "http://"+window.location.host+"/crm_web/login_new.html"; //跳转到登陆页面
}
}
});
/**
* 在页面中任何嵌套层次的窗口中获取顶层窗口
* @return 当前页面的顶层窗口对象
*/
function getTopWinow(){
var p = window;
while(p != p.parent){
p = p.parent;
}
return p;
}
如有疑问可以直接给我回复。。。。。
jQuery easyui Session 超时返回登录页面
标签:class style log com 代码 使用 http java si
原文:http://www.cnblogs.com/tb176/p/4476415.html
转自:http://www.bubuko.com/infodetail-783058.html
发表评论
-
Flutter和RN对比
2021-10-22 11:33 397Flutter和RN对比 Flutter介绍和主流框架的对比 ... -
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
2021-02-01 20:37 373https://www.jb51.net/article/18 ... -
超链接实现post方式提交
2021-01-26 21:39 732https://lusaijie.blog.csdn.net/ ... -
Model模态框点击其他除了模态框区域不消失
2020-10-24 18:47 550问题: 相信许多的小伙伴在使用Model(模态框)的时候都遇到 ... -
jquery radio 动态控制选中失效问题的解决方法
2019-09-10 21:36 405性别选择 男女 通常是使用radio 在修改客户资料时 需要根 ... -
velocity判断空和null
2019-07-02 17:34 362https://jiangctry.iteye.com/blo ... -
超链接实现post方式提交
2019-07-02 14:05 649https://blog.csdn.net/yalishada ... -
jQuery实现checkbox全选功能完整实例
2019-02-27 19:34 390使用jQuery完成复选框的全选和全不选 https://bl ... -
如何在bootstrap模态框弹出后触发函数
2018-09-13 22:11 736如何在bootstrap模态框弹出后触发函数 https:// ... -
JQuery跳出each循环的方法(包含数组遍历)
2018-05-15 20:01 379https://www.cnblogs.com/fanbi/p ... -
Cookie和Session的作用和工作原理
2018-02-05 19:44 527http://blog.csdn.net/guoweimelo ... -
JQuery 插件之Ajax Autocomplete(ajax自动完成)
2018-01-01 21:49 501https://www.cnblogs.com/maxiao/ ... -
ajaxFileUpload 报这错jQuery.handleError is not a function
2016-12-08 15:56 464转自:http://zhangzhaoaaa.iteye.co ... -
ajax form表单提交 input file中的文件
2016-11-29 21:45 701http://www.cnblogs.com/Leo_wl/p ... -
jquery的几个CDN加速点
2016-10-31 13:59 491谷歌jquery cdn加速点 http://ajax.goo ... -
jquery cookie 插件下载
2016-10-20 17:02 603http://plugins.jquery.com/cooki ... -
placeholder的兼容处理(jQuery下)
2016-10-18 15:23 339/* .placeholder{ colo ... -
JQuery 自动触发事件
2016-10-18 11:14 522有时候,需要通过模拟 ... -
jQuery中没有innerText、innerHtml
2016-09-29 10:47 411发现如果我在div或者其他非表单的标签中赋值,原本用普通的js ... -
JQuery处理json与ajax返回JSON实例代码
2016-09-28 16:32 478一、JSON的一些基础知识 ...
相关推荐
jQuery EasyUI 是一个基于 jQuery 的前端框架,它封装了一系列的 jQuery 插件,为开发者提供了构建用户界面的简便方法。这个“jquery easyui datagrid demo”包含了一些关于如何使用 jQuery EasyUI 中 Datagrid 组件...
jQuery EasyUI 是一个基于 jQuery 的前端框架,它简化了网页用户界面开发,提供了丰富的组件和功能。这个“jQuery EasyUI 帮助文档”包含了全面的API参考和使用指南,对于开发者来说是极具价值的资源。 jQuery ...
jQuery EasyUI 适用于企业级后台管理系统、数据展示界面、Web 应用的前端开发。它的组件丰富,样式统一,可以快速构建出具有专业外观的管理界面。 ### 5. 注意事项 - 考虑到性能,不要在不需要的地方过度使用组件...
**jQuery EasyUI 知识点详解** jQuery EasyUI 是一个基于 ...总的来说,jQuery EasyUI 降低了前端开发的门槛,通过简单易用的 API 实现复杂界面的构建。通过实践和探索这个 Demo,你将能更好地理解和运用这一框架。
jQuery EasyUI 是一个基于 jQuery 的前端框架,它简化了HTML用户界面的开发,提供了一系列易于使用的组件,如对话框、表格、菜单、按钮等。EasyUI 的API是开发者理解和使用这个框架的关键。以下是对jQuery EasyUI ...
《使用jQuery EasyUI构建界面原型的实践与指南》 jQuery EasyUI是一款基于jQuery的轻量级前端框架,它提供了一套完整的UI组件,用于快速构建功能丰富的Web应用界面。在这个项目中,我们利用EasyUI 1.1.1版本创建了...
jQuery EasyUI 是一款非常棒的WEB前端UI框架,很多朋友都在找jQuery EasyUI API 中文文档,本次给大家提供的就是jQuery EasyUI v1.3.5官方API中文版,有需要的拿去用吧
针对jQuery EasyUI的1.9.0的在线帮助文档进行整理,生成chm文件,便于开发时或者离线对easyi控件的属性、文法、事件等内容的查看。
jQuery EasyUI 是一个基于 jQuery 的前端框架,它简化了网页用户界面开发,提供了一系列易于使用的组件,如对话框、表格、菜单、按钮等。版本 1.5.1 是一个重要的更新,它不仅包含了之前版本的所有功能,还进行了...
jQuery EasyUI 是一个基于 jQuery 的前端开发框架,它简化了网页界面的构建,提供了一系列的 UI 组件,如对话框、表格、下拉菜单、树形结构等。这个参考资源合集包含了三个重要的文档,分别为 jQuery EasyUI 1.2 API...
SSH+jQuery EasyUI后台管理系统是一种基于Struts2(S)、Spring(S)和Hibernate(H)三大开源框架的Web应用程序开发模式,结合jQuery EasyUI前端框架,构建出高效、简洁且具有现代感的后台管理界面。这个系统设计的...
jQuery EasyUI则是一个基于jQuery的UI库,提供了丰富的组件和易于使用的API,用于快速构建现代、响应式的Web应用界面。 在这个"ssm+jqueryeasyui案例"中,我们可以学习如何将这三者结合,构建出功能完善的Web应用。...
jQuery EasyUI 是一个基于 jQuery 的前端开发框架,用于快速构建用户界面。v1.10.0 是这个框架的一个特定版本,包含了一系列组件和功能,适用于网页应用的开发。在这个zip压缩包中,我们可以找到一系列文件,每个都...
JQuery EasyUI 是一个基于 jQuery 的轻量级前端框架,它提供了一系列的 UI 组件,如对话框、表格、树形菜单、按钮等,用于快速构建用户界面。在这个"Jquery EasyUI 日历Demo"中,我们将探讨如何利用 EasyUI 的日历...
在Web开发中,jQuery EasyUI、ZTree和折线图是三种常见的组件,它们分别用于构建用户界面、实现树形结构展示和数据可视化。本篇文章将深入探讨这些技术及其在实际项目中的应用。 首先,jQuery EasyUI是一个基于...
jQuery EasyUI是一组基于jQuery的UI插件集合体,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面。开发者不需要编写复杂的javascript,也不需要对c 资源太大,传百度网盘了,...
jQuery EasyUI 是一个基于 jQuery 的用户界面插件集合,它提供了一套丰富的 UI 组件库,包括按钮、表单、网格、树形结构等,可以极大地简化前端开发工作,使得开发者能够更加专注于业务逻辑的实现而无需过多地关注...
jQuery EasyUI 是一个基于 jQuery 的前端开发框架,它简化了网页界面的构建,提供了一系列易于使用的组件和插件,使得开发者能够快速构建出美观、功能丰富的用户界面。这个压缩包包含的是 jQuery EasyUI 的全套文件...
jQuery EasyUI是一款基于jQuery的前端开发框架,它简化了网页用户界面的设计,使得开发者能够快速构建功能丰富的Web应用。这个框架吸收了ExtJS的一些设计理念,提供了丰富的组件和精美的界面,但相比ExtJS,jQuery ...
jQuery EasyUI 是一个基于 jQuery 的前端框架,它提供了一系列易于使用的组件,帮助开发者快速构建用户界面。1.3.6 版本是该框架的一个稳定版本,包含了丰富的功能和优化,旨在提高开发效率和用户体验。 在jQuery ...