美文网首页
验证码的制作

验证码的制作

作者: 年少懵懂丶流年梦 | 来源:发表于2017-06-23 15:22 被阅读136次

    验证码定义:
    验证码是一种区分用户是计算机还是人的公共自动程序。
    作用:
    可以防止恶意破解密码,刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试。

    没有验证码会带来的一些问题:

    • 对特定用户不断登录破解密码
    • 对某个网站创建账户
    • 对某个网站提交垃圾数据
    • 对某个网站刷票
    1、使用Servlet实现
    开源组件实现验证码
    1. 使用Jcaptcha组件实现验证码
      jcaptcha的使用比较简单:
      1:下载并将其JAR放到类路径下
      2:配置web.xml
      3:写一个验证验证码的请求方法

    web配置代码

    <servlet>
        <servlet-name>jcaptcha</servlet-name>
        <servlet-class>
           com.octo.captcha.module.servlet.image.SimpleImageCaptchaServlet
        </servlet-class>
    </servlet>
    
    1. 使用Kaptcha组件使用验证码

    下载kaptcha-2.3。jar
    将jar包导入项目
    编写页面
    配置web.xml
    启动项目
    web.xml配置

    <servlet>
    <servlet-name>kaptcha</servlet-name>
    <servlet-class>
    com.google.code.kaptchaServlet
    </servlet-class>
    </servlet>
    

    插件KaptchaServlet获取session中的验证码

    String captcha = ((String) request.getSession().getAttribute(
    com.google.code.kaptcha.Constants.KAPTCHA_SESSION_KEY));
    

    边框颜色:rgb值也可以


    文本实现类:kaptcha.textproducer.impl 值为:com.google.code.kaptcha.text.impl.DefaultTextCreator
    验证码值配置:kaptcha.textproducer.char.string 值:abcde2345678gfynmnpwx(随意你自己写)
    验证码的长度:kaptcha.textproducer.char.length 值:
    字体:kaptcha.textproducer.font.names 值:Arial,Courier
    字体颜色:kaptcha.textproducer.font.color 值: r,g,b 或者 white,black,blue
    文字间隔:kaptcha.textproducer.char.space 值:
    干扰实现类:kaptcha.noise.impl 值:com.google.code.kaptcha.impl.DefaultNoise/NoNoise
    干扰颜色:kaptcha.noise.color 值: r,g,b 或者 white,black,blue
    图片样式:kaptcha.obscurificator.impl 值:
    水纹com.google.code.kaptcha.impl.WaterRipple;
    鱼眼com.google.code.kaptcha.impl.FishEyeGimpy;
    阴影com.google.code.kaptcha.impl.ShadowGimpy
    背景实现类:kaptcha.background.impl 值:com.google.code.kaptcha.impl.DefaultBackground
    背景渐变色开始:kaptcha.background.clear.from 值:r,g,b 或者 white,black,blue
    背景渐变色结束:kaptcha.background.clear.to 值:r,g,b 或者 white,black,blue
    文字渲染器:kaptcha.word.impl 值:com.google.code.kaptcha.text.impl.DefaultWordRenderer
    session中存放验证码的key键:kaptcha.session.key 值:KAPTCHA_SESSION_KEY

    相关文章

      网友评论

          本文标题:验证码的制作

          本文链接:https://www.haomeiwen.com/subject/hviebttx.html