easy-captcha实现验证码功能

1.导入依赖

<!--验证码-->
        <dependency>
            <groupId>com.github.whvcse</groupId>
            <artifactId>easy-captcha</artifactId>
            <version>${captcha.verion}</version>
        </dependency>

2.png类型

 @RequestMapping("/checkCode")
public void checkCode(HttpServletResponse response) throws IOException {
    // png类型 100宽度 48高度
    SpecCaptcha captcha = new SpecCaptcha(100, 48);
    String text = captcha.text();// 获取验证码的字符
    char[] chars = captcha.textChar();// 获取验证码的字符数组
 
    System.out.println("验证码:"+text);
    System.out.println(chars);
    // 输出验证码
    captcha.out(response.getOutputStream());
}

3.gif类型

 @RequestMapping("/checkCode")
public void checkCode(HttpServletResponse response) throws IOException {
 
    // 中文类型
    ChineseCaptcha captcha = new ChineseCaptcha(100, 48);
    //获取验证码
    String text = captcha.text();
    System.out.println("验证码为:"+text);
    // 输出验证码
    captcha.out(response.getOutputStream());
}

4.中文类型

 @RequestMapping("/checkCode")
public void checkCode(HttpServletResponse response) throws IOException {
    // 中文类型
    ChineseCaptcha captcha = new ChineseCaptcha(100, 48);
    //获取验证码
    String text = captcha.text();
    System.out.println("验证码为:"+text);
    // 输出验证码
    captcha.out(response.getOutputStream());
}

5.算术类型

 @RequestMapping("/checkCode")
public void checkCode(HttpServletResponse response) throws IOException {
    // 算术类型
    ArithmeticCaptcha captcha = new ArithmeticCaptcha(100, 48);
    captcha.setLen(3);  // 几位数运算,默认是两位
    captcha.getArithmeticString();  // 获取运算的公式
    String text = captcha.text();// 获取运算的结果
 
    System.out.println("计算结果为:"+text);
    // 输出验证码
    captcha.out(response.getOutputStream());
}

用户输入验证码后,可以通过比较用户输入的验证码和生成的验证码的值来验证其正确性。

EasyCaptcha 还提供了一些其他的配置选项,例如自定义验证码的宽度、高度、字体、干扰线等等

注意:请确保在使用验证码时遵循适当的安全措施,以防止滥用、暴力破解或其他恶意行为

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值