书城4 - 验证码 Kaptcha

Kaptcha 验证码

  • 为什么使用验证码
    • 验证码:通过让用户填写验证码并在服务器端检查,防止浏览器端使用程序恶意访问。
  • 如何实现验证码
    • 验证码思路

Kaptcha 如何使用

  • 添加 jar 包 Kaptcha.jar 注意!需要工件 filters.jar

  • 在 web.xml 文件中注册 KaptchaServlet,并设置验证码图片的相关属性

  • 在 html 页面上编写一个 img 标签,然后设置 src = KaptchaServlet 对应的 url-pattern

    • <img style="width: 150px; height: 40px;" src="KaptchaServlet" alt="" />
      
  • 可以在 web.xml 的 servlet 标签中,对验证码的样式做详细的设置

    • <servlet>
          <!-- 注册KaptchaServlet -->
          <servlet-name>KaptchaServlet</servlet-name>
          <servlet-class>com.google.code.kaptcha.servlet.KaptchaServlet</servlet-class>
          
          <!-- 设置边框颜色 -->
          <init-param>
              <param-name>kaptcha.border.color</param-name>
              <param-value>red</param-value>
          </init-param>
          <!-- 设置验证码内容范围 {a,b,c,d,e,f,g} -->
          <init-param>
              <param-name>kaptcha.textproducer.char.string</param-name>
              <param-value>abcdefg</param-value>
          </init-param>
      </servlet>
      
      <servlet-mapping>
          <!-- html 页面通过 img src="KaptchaServlet" 访问验证码 -->
          <servlet-name>KaptchaServlet</servlet-name>
          <url-pattern>KaptchaServlet</url-pattern>
      </servlet-mapping>
      
    • 更详细的属性设置在 jar 包中可查 kaptcha->com->google->code->kaptcha->Constants

  • Kaptcha 在生成验证码图片时,会将验证码信息保存到 session 中,在 service 层中可以直接通过 session.getAttribute("KAPTCHA_SESSION_KEY") 获取验证码的内容

posted @   LaViez  阅读(15)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 在鹅厂做java开发是什么体验
· 百万级群聊的设计实践
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
· 永远不要相信用户的输入:从 SQL 注入攻防看输入验证的重要性
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
点击右上角即可分享
微信分享提示