分享一款非常好用的算术验证码(后台是java)

先上图:

分享一款非常好用的算术验证码(后台是java)_第1张图片

maven项目依赖:


    com.github.whvcse
    easy-captcha
    1.6.2

java代码:

@GetMapping("/captcha")
    public void captcha(HttpServletRequest request, HttpServletResponse response) throws Exception {
        // 设置请求头为输出图片类型
        response.setContentType("image/gif");
        response.setHeader("Pragma", "No-cache");
        response.setHeader("Cache-Control", "no-cache");
        response.setDateHeader("Expires", 0);
        // 算术类型
        ArithmeticCaptcha captcha = new ArithmeticCaptcha(130, 48); // 图片的宽高
        captcha.setLen(2);  // 几位数运算,默认是两位
        captcha.getArithmeticString();  // 获取运算的公式:3+2=?
        captcha.text();  // 获取运算的结果:5
        // 验证码存入session
        request.getSession().setAttribute("captcha", captcha.text().toLowerCase());

        // 输出图片流
        captcha.out(response.getOutputStream());
    }

想要了解原理的小伙伴,可以去大佬的git:https://github.com/whvcse/EasyCaptcha

里面有各种类型的验证码,中文的、纯数字的、字母数字结合的、算术的、、、

你可能感兴趣的:(html,java,验证码)