Commit 948bc181 by fengshuonan

增加验证码功能

parent b8d54a5b
......@@ -15,13 +15,17 @@
*/
package cn.stylefeng.guns.sys.modular.system.controller;
import cn.stylefeng.guns.base.pojo.node.MenuNode;
import cn.stylefeng.guns.base.shiro.ShiroUser;
import cn.stylefeng.guns.sys.core.exception.InvalidKaptchaException;
import cn.stylefeng.guns.sys.core.log.LogManager;
import cn.stylefeng.guns.base.pojo.node.MenuNode;
import cn.stylefeng.guns.sys.core.log.factory.LogTaskFactory;
import cn.stylefeng.guns.sys.core.shiro.ShiroKit;
import cn.stylefeng.guns.sys.core.util.KaptchaUtil;
import cn.stylefeng.guns.sys.modular.system.service.UserService;
import cn.stylefeng.roses.core.base.controller.BaseController;
import cn.stylefeng.roses.core.util.ToolUtil;
import com.google.code.kaptcha.Constants;
import org.apache.shiro.authc.UsernamePasswordToken;
import org.apache.shiro.subject.Subject;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -99,6 +103,15 @@ public class LoginController extends BaseController {
String password = super.getPara("password").trim();
String remember = super.getPara("remember");
//验证验证码是否正确
if (KaptchaUtil.getKaptchaOnOff()) {
String kaptcha = super.getPara("kaptcha").trim();
String code = (String) super.getSession().getAttribute(Constants.KAPTCHA_SESSION_KEY);
if (ToolUtil.isEmpty(kaptcha) || !kaptcha.equalsIgnoreCase(code)) {
throw new InvalidKaptchaException();
}
}
Subject currentUser = ShiroKit.getSubject();
UsernamePasswordToken token = new UsernamePasswordToken(username, password.toCharArray());
......
......@@ -71,20 +71,21 @@
<input type="radio" name="remember" value="off" title="否" checked="">
</div>
</div>
<!--<div class="layui-form-item">-->
<!--<label class="layui-form-label"><i class="layui-icon layui-icon-vercode"></i></label>-->
<!--<div class="layui-input-block">-->
<!--<div class="layui-row inline-block">-->
<!--<div class="layui-col-xs7">-->
<!--<input name="code" type="text" lay-verify="required" placeholder="验证码"-->
<!--class="layui-input">-->
<!--</div>-->
<!--<div class="layui-col-xs5" style="padding-left: 10px;">-->
<!--<img class="login-captcha" src="https://www.oschina.net/action/user/captcha">-->
<!--</div>-->
<!--</div>-->
<!--</div>-->
<!--</div>-->
@if(kaptcha.getKaptchaOnOff() == true){
<div class="layui-form-item">
<label class="layui-form-label">验证码</label>
<div class="layui-input-block">
<div class="layui-row inline-block">
<div class="layui-col-xs7">
<input name="kaptcha" type="text" lay-verify="required" placeholder="验证码" class="layui-input">
</div>
<div class="layui-col-xs5" style="padding-left: 10px;">
<img class="login-captcha" src="${ctxPath}/kaptcha">
</div>
</div>
</div>
</div>
@}
<div class="layui-form-item">
<a href="javascript:;" class="layui-link">帐号注册</a>
<a href="javascript:;" class="layui-link pull-right">忘记密码?</a>
......@@ -133,9 +134,9 @@
});
// 图形验证码
// $('.login-captcha').click(function () {
// this.src = this.src + '?t=' + (new Date).getTime();
// });
$('.login-captcha').click(function () {
this.src = this.src + '?t=' + (new Date).getTime();
});
var errorMsg = "${tips!}";
if (errorMsg) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment