生成"登录验证码"的方法步骤

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生成"登录验证码"的方法步骤相关的知识,希望对你有一定的参考价值。

1.添加simplecaptcha架包简单够用的验证码生产库.

2.新增CaptchaModule模块类

public class CaptchaModule {    
    @At
    @Ok("raw:png")    
    public BufferedImage next(HttpSession session, @Param("w") int w,@Param("h") int h) {        
    if (w * h < 1) { //长或宽为0?重置为默认长宽.
            w = 200;
            h = 60;
        }
        Captcha captcha = new Captcha.Builder(w, h)
                                .addText().addBackground(new GradiatedBackgroundProducer())
                                .gimp(new FishEyeGimpyRenderer())
                                .build();
        String text = captcha.getAnswer();
        session.setAttribute(Toolkit.captcha_attr, text);        return captcha.getImage();
    }
}


  • raw代表RawView

  • png是RawView中对image/png的缩写,是数据mime的描述

  • 返回值是BufferedImage,且这是image/png, 所以会转为图片显示. 还支持jpg/webp等格式,详情参考RawView的源码吧.

  • Captcha有N多的组合和配置,自行选择啦

3.在页面中加入验证码文本框

<script type="text/javascript">
            function next_captcha() {
                $("#captcha_img").attr("src", "${base}/captcha/next?_=" + new Date().getTime()); 
            }
        </script>
        验证码<input name="captcha" type="text" value="">
        <img id="captcha_img" onclick="next_captcha();return false;" src="${base}/captcha/next"></img>

技术分享技术分享


本文出自 “12403903” 博客,转载请与作者联系!

以上是关于生成"登录验证码"的方法步骤的主要内容,如果未能解决你的问题,请参考以下文章

怎么给登录网页设置验证码1分钟过期?

如何去掉网站管理员登陆时的验证码?

vue实现获取验证码

我的php代码中登陆界面加一个验证码,如何实现

百度api识别验证码登录

登录界面更换验证码图片