jfinal 拦截器

暮雪 发布于 2013/05/29 15:36
阅读 1K+
收藏 2
写一个拦截器,用户在登录前只能浏览信息,如果要投票或是发表评论这类的就会跳转到登录页面,登录成功后又跳转回到之前的页面,这个要怎么实现?
加载中
0
JFinal
JFinal

1:在投票、发表评论这类的action之上添加拦截器

2:在此拦截器中判断用户是否已经登录,如果已经登录则直接放行,否则 redirect 到登录页面

3:在redirect 到的登录页地址后面问号挂个参数,如:

redirect("/login?to=" + ai.getActionKey());
4:在登录页面中的表单中用隐藏域将传回来的 actionKey 存放起来,或者在表单的 action 地址中也用问号挂参的形式: /doLogin?to=xxxActionKey

5:登录成功后:

String to = getPara("to");
if (StringKit.notBlank(to))
   redirect(to);
else
   redirect("/");

关键在于将 actionKey 一直保持到登录成功,登录成功后再重定向到这个 actionKey,如果actionKey后还还有 urlPara也照此办理,打完收工

返回顶部
顶部