加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

分享一个Flex管理系统 Session超时的时候 用户操作时自动提示并

发布时间:2020-12-15 03:51:46 所属栏目:百科 来源:网络整理
导读:网页登陆一般都是半小时不动就超时了 对吧 我做了一个会员管理系统,前台是flex的,相信有很多人用flex做这样的管理系统 但是如果session超时后,用户操作没有提示一直在那里点,系统没有任何回应,用户体验是不是就差了呢? 我这里有一个解决的方法 我的flex

网页登陆一般都是半小时不动就超时了 对吧

我做了一个会员管理系统,前台是flex的,相信有很多人用flex做这样的管理系统

但是如果session超时后,用户操作没有提示一直在那里点,系统没有任何回应,用户体验是不是就差了呢?

我这里有一个解决的方法

我的flex端是用 URLRequest 和 URLLoader 来从后台获取数据的

于是我只需要重写 URLLoader 判断返回的数据是否包含了提示登陆的信息就行了

下面是重写URLLoader


	import flash.net.URLLoader;
	import flash.net.URLRequest;
	import flash.net.navigateToURL;
	
	import mx.controls.Alert;

	/**
	 * 重写JSONDecoder
	 * 如果是登陆超时了 就提示超时 并且跳转到登陆页面
	 */
	public class MyURLLoader extends URLLoader
	{

		public function MyURLLoader(request:URLRequest=null)
		{
			super(request);
		}
		
		/**
		 * 得到load返回的数据
		 * 判断处理是否超时,需要跳转到登陆页面
                 * 本来我是想重写 data 属性的,无奈没成功,提示不兼容的覆盖,所以只能重新写一个方法来处理data了
		 */ 
		public function getDate():String{
			// 如果是登陆超时了 就提示超时 并且跳转到登陆页面
			if (super.data.toString().indexOf("会员管理系统_海娜韵植物养发") != -1)
			{
				var confirmHandler:Function=function(dlgObj:Object):void
				{
					if (dlgObj.detail == Alert.YES)
					{
						navigateToURL(new URLRequest("/login.html"),"_self");
					}
				}
				Alert.show("登陆超时了,您需要重新登陆会员管理系统!!","温馨提示:",Alert.YES | Alert.NO,null,confirmHandler,Alert.NO);
			}
			return super.data;
		}
	}


然后所有从后台取数据的loder都用MyURLLoader


var actionComplete:Function=function(e:Event):void 

    {  

    // 原来是 loader.data   

   // 本来我是想重写 data 属性的,无奈没成功,提示不兼容的覆盖,  

    //var decoder:JSONDecoder=new JSONDecoder(loader.getDate());  

        

    }  

    var request:URLRequest=new URLRequest(com.hainayun.flex.common.sys.members.Card.ACT_URL + "getAll");  

    request.method="POST";  

    var loader:MyURLLoader=new MyURLLoader(request);  

    loader.addEventListener(Event.COMPLETE,actionComplete); 

当然后台是需要判断当session失效的时候跳转到 /login.html 也就是登陆页面

当session失效后 不管用户点什么操作 都会提示session失效 然后跳转到登陆页面了





后台用的 JFinal做的,用JFinal的 handler和Interceptor做权限过滤非常方便

以前本系统的后台是是用strtus+mybatis做的 现在换JFinal后各种轻松 虽然改动很大 但是很值得啊 现在看起来舒服多了

再次感谢 @JFinal

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读