微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

【转发】Spring Boot 配置Kaptcha谷歌验证码工具生成验证码、验证验证码

来自https://blog.csdn.net/qq_38974638/article/details/120417679 

Spring Boot
55 篇文章 5 订阅
订阅专栏
1 Kaptcha
1.1 Kaptcha简介

        Kaptcha 是一个扩展自simplecaptcha的验证码库,认情况下,Kaptcha非常易于设置和使用,并且输出会产生一个很难验证的验证码。认情况下,它生成的验证码看起来与上面的非常相似。如果您想更改输出的外观,则有几个配置选项,并且该框架是模块化的,因此您可以编写自己的变形代码
1.2 Kaptcha详细配置表
Kaptcha常用属性
序号    属性名    描述    示例
1    kaptcha.width    验证码宽度    200
2    kaptcha.height    验证码高度    50
Kaptcha border(边框)属性
序号    属性名    描述    示例
1    kaptcha.border.enabled    是否显示边框    true
2    kaptcha.border.color    边框颜色    black
3    kaptcha.border.thickness    边框厚度    2
Kaptcha content(文本)属性
序号    属性名    描述    示例
1    kaptcha.content.length    验证码文本长度    5
2    kaptcha.content.source    文本源    abcde2345678gfynmnpwx
3    kaptcha.content.space    文本间隔    2
Kaptcha font(字体)属性
序号    属性名    描述    示例
1    kaptcha.font.name    字体名称    Arial
2    kaptcha.font.size    字体大小    40
3    kaptcha.font.color    字体颜色    black
Kaptcha background-color(背景颜色)属性
序号    属性名    描述    示例
1    kaptcha.background-color.from    背景颜色(开始渐变色)    lightGray
2    kaptcha.background-color.to    背景颜色(结束渐变色)    white
2 Maven依赖

            <!-- 验证码 -->
            <dependency>
                <groupId>com.baomidou</groupId>
                <artifactId>kaptcha-spring-boot-starter</artifactId>
                <version>1.1.0</version>
            </dependency>

3 Spring Boot配置

    #验证码宽度
    kaptcha.width=200
    #验证码高度
    kaptcha.height=50
    #验证码内容长度
    kaptcha.content.length=4
    #验证码内容
    kaptcha.content.source=ABCDEFGHIJKLMnopQRSTUVWXYZ2345678923456789
    #验证码内容间隔
    kaptcha.content.space=2
    #验证码字体名称
    kaptcha.font.name=Arial
    #验证码字体大小
    kaptcha.font.size=40
    #验证码字体颜色
    kaptcha.font.color=black
    #验证码背景颜色(开始颜色)
    kaptcha.background-color.from=lightGray
    #验证码背景颜色(结束颜色)
    kaptcha.background-color.to=white
    #验证码是否显示边框
    kaptcha.border.enabled=true
    #验证码边框颜色
    kaptcha.border.color=black
    #验证码边框厚度
    kaptcha.border.thickness=1

4 调试代码

    package com.controller;
     
    import com.baomidou.kaptcha.Kaptcha;
    import com.baomidou.kaptcha.exception.KaptchaIncorrectException;
    import com.baomidou.kaptcha.exception.KaptchaNotFoundException;
    import com.baomidou.kaptcha.exception.KaptchaTimeoutException;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
     
    @RestController
    public class KaptchaController {
        @Autowired
        private Kaptcha kaptcha;
     
        /**
         * 获取Kaptcha验证码
         */
        @GetMapping("/getKaptchaimg")
        public void getKaptchaimg() {
            //认900秒
            kaptcha.render();
        }
     
        /**
         * 验证验证码
         *
         * @param code 验证码
         * @return
         */
        @GetMapping("/validCode")
        public String validCode(@RequestParam String code) {
            try {
                kaptcha.validate(code);
            } catch (Exception e) {
                if (e instanceof KaptchaIncorrectException) {
                    return "验证码不正确";
                } else if (e instanceof KaptchaNotFoundException) {
                    return "验证码未找到";
                } else if (e instanceof KaptchaTimeoutException) {
                    return "验证码过期";
                } else {
                    return "验证码渲染失败";
                }
            }
            return "验证通过";
        }
    }

5 调试结果
5.1 生成验证码

 

 


5.2 验证验证码
5.2.1 验证通过

 

 


 
5.2.2 验证码不存在

 

 

 


————————————————
版权声明:本文为CSDN博主「旭东怪」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_38974638/article/details/120417679

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐