1 Star 0 Fork 121

zengshuai/JFinalShiroPlugin

forked from 李飞/JFinalShiroPlugin 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
CaptchaFormAuthenticationInterceptor.java 2.21 KB
一键复制 编辑 原始数据 按行查看 历史
lifei_osc 提交于 2015-08-03 04:15 . 添加实际例子代码
/**
* Copyright (C) 2014 陕西威尔伯乐信息技术有限公司
* @Package com.wellbole.web.sys.login
* @Title: CaptchaFormAuthenticationInterceptor.java
* @Description: 带验证码的表单验证拦截器
* @author 李飞 (lifei@wellbole.com)
* @date 2014年9月11日 下午1:18:00
* @since V1.0.0
*
* Modification History:
* Date Author Version Description
* -------------------------------------------------------------
* 2014年9月11日 李飞 V1.0.0 新建文件
*/
package com.wellbole.web.core.shiro;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import org.apache.shiro.authc.AuthenticationToken;
import org.apache.shiro.web.filter.authc.FormAuthenticationFilter;
import org.apache.shiro.web.util.WebUtils;
import com.jfinal.aop.Interceptor;
import com.jfinal.aop.Invocation;
/**
* @ClassName: CaptchaFormAuthenticationInterceptor
* @Description: 带验证码的表单验证拦截器
* @author 李飞 (lifei@wellbole.com)
* @date 2014年9月11日 下午1:18:00
* @since V1.0.0
*/
public class CaptchaFormAuthenticationInterceptor extends FormAuthenticationFilter implements Interceptor {
private String captchaParam = "captcha";
public String getCaptchaParam() {
return captchaParam;
}
protected String getCaptcha(ServletRequest request) {
return WebUtils.getCleanParam(request, getCaptchaParam());
}
protected AuthenticationToken createToken(HttpServletRequest request) {
String username = getUsername(request);
String password = getPassword(request);
String captcha = getCaptcha(request);
boolean rememberMe = isRememberMe(request);
String host = getHost(request);
return new CaptchaUsernamePasswordToken(username, password, rememberMe, host, captcha);
}
@Override
public void intercept(Invocation ai) {
HttpServletRequest request = ai.getController().getRequest();
AuthenticationToken authenticationToken = createToken(request);
request.setAttribute("shiroToken", authenticationToken);
ai.invoke();
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/izengshuai/jfinalshiroplugin.git
git@gitee.com:izengshuai/jfinalshiroplugin.git
izengshuai
jfinalshiroplugin
JFinalShiroPlugin
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385