日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

圖形驗證碼是最經典,也是最常用的驗證方式。今天介紹一個非常不錯的類庫:JAVA圖形驗證碼,支持gif、中文、算術等類型,可用于Java Web、JavaSE等項目。

官網:

https://gitee.com/whvse/EasyCaptcha

效果圖:

Java圖形驗證碼支持gif、中文、算術等

 

 

0x01:項目引入easy-captcha

<dependencies>
   <dependency>
      <groupId>com.github.whvcse</groupId>
      <artifactId>easy-captcha</artifactId>
      <version>1.6.2</version>
   </dependency>
</dependencies>

 

0x02:SpringBoot項目創建圖形驗證碼

前后端分離項目中建議不要存儲在session中;而使用分布式session,存儲在redis中,redis存儲需要一個key,key一同返回給前端用于驗證輸入。

@Controller
public class CaptchaController {
    @Autowired
    private RedisUtil redisUtil;
    @ResponseBody    @RequestMApping("/vcode/captcha")
    public JsonResult captcha(HttpServletRequest request, HttpServletResponse response) throws Exception {        SpecCaptcha specCaptcha = new SpecCaptcha(130, 48, 5);
        String verCode = specCaptcha.text().toLowerCase();        String key = UUID.randomUUID().toString();        // 存入redis并設置過期時間為30分鐘
        redisUtil.setEx(key, verCode, 30, TimeUnit.MINUTES);
        // 將key和base64返回給前端
        return JsonResult.ok().put("key", key).put("image", specCaptcha.toBase64());
    }    @ResponseBody    @PostMapping("/vcode/vaild")
    public JsonResult login(String username,String password,String verCode,String verKey){        // 獲取redis中的驗證碼
        String redisCode = redisUtil.get(verKey);        // 判斷驗證碼
        if (verCode==null || !redisCode.equals(verCode.trim().toLowerCase())) {
            return JsonResult.error("驗證碼不正確");
        }    }  }

 

0x03:前端使用ajax獲取驗證碼并驗證

<img id="verImg" width="130px" height="48px"/>
<script>    var verKey;    // 獲取驗證碼    $.get('/vcode/captcha', function(res) {
        verKey = res.key;        $('#verImg').attr('src', res.image);
    },'json');
    // 登錄    $.post('/vcode/login', {
        verKey: verKey,        verCode: '8u6h',
        username: 'admin',
        password: 'admin'
    }, function(res) {
        console.log(res);
    }, 'json');
</script>

分享到:
標簽:驗證碼 圖形
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定