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

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>

时间: 2024-08-17 21:13:39

生成"登录验证码"的方法步骤的相关文章

生成随机验证码的方法

1.借助列表 import random def random_code(): random_list = [] for i in range(4): ra = random.randrange(4) if ra == i: random_list.append(chr(random.randrange(97,122))) else: random_list.append(str(random.randrange(0,9))) code = "".join(random_list) r

使用easy_captcha生成登录验证码 ruby on rails

(1)新增gem to Gemfile ,then  bundle install gem 'easy_captcha', git: 'https://github.com/phatworx/easy_captcha.git' gem 'rmagick' (2)after bundle execute rails g easy_captcha:install 运行完这句话,可以看到app/controllers/application_controller.rb 和 config/routes.

生成验证码的方法集合(一)

用户在注册或登录时,为了进一步保证安全性,越来越多的网站开始采用动态生成的图形码或附加码进行验证.验证码技术就是在服务器端生成一个随机数,并将其保存在内存中,然后将随机数写入设计好的图片中,发送给浏览器,并以图片形式显示给最终用户.前几天,在完成一个利用Script进行用户注册及登录的验证时,在加入验证码这一块的时候,发现了各种生成验证码的方式,就利用空余时间做了一个整理及重写.那么我的博客之旅就从这篇验证码的生成开始了. 下面主要是几种不同的生成验证码的方式: 1.绘制纯数字的网站验证码 本实

java生成六位验证码

import java.util.Random; public class random { public static String getrandom(){ String code = ""; Random random = new Random(); for (int i = 0; i < 6; i++) { int r = random.nextInt(10); //每次随机出一个数字(0-9) code = code + r; //把每次随机出的数字拼在一起 } ret

在JSP中动态生成随机验证码,登录时后台校验验证码,以及如何避免同一个验证码被重复提交爆破密码

只需几步就可以生成动态随机的验证码,最终效果如下图: 一 前台显示页面login.jsp 其中验证码显示的是一张图片,链接指向的是生成验证码的servlet,同时点击图片后触发changeImg()这个js函数,使其动态生成一个新的验证码,这个函数中的参数t=Math.random()并不会参与验证码的生成,它的作用仅仅只是表示每次提交的并不是同一个请求,需要单独处理,完整的login.jsp代码如下: <%@ page language="java" contentType=&

生成验证码的方法集合(二)

前一篇随笔已将介绍了三种验证码生成的方法(纯数字.数字与字母结合.四则运算式),那这篇随笔将接着前一篇的内容,继续介绍验证码的生成方法——中文彩色验证码. 在登录一些管理网站时,可以看到网页中的验证码是以汉字形式出现的.汉字的形式比字母和数字混合验证码技术更先进.通过使用带有各种色彩的汉字验证码,可以有效地防止非法用户灌水. 首先新建一个VryImgGen类,在其中定义生成中文彩色验证码的方法: public class VryImgGen { public static string Chin

随机生成登录时的验证码图片

生成随机验证码的代码: 1 package servlet; 2 3 import java.awt.Color; 4 import java.awt.Font; 5 import java.awt.Graphics; 6 import java.awt.Graphics2D; 7 import java.awt.image.BufferedImage; 8 import java.io.IOException; 9 import java.io.OutputStream; 10 import

PIL模块与随机生成中文验证码

今天我们要学习的内容是如何利用Python生成一个随机的中文验证码,并将图片保存为.jpeg格式. 在这之前,你首先得了解Python中的PIL库.PIL是Python Imaging Library的简称,PIL是一个Python处理 图片的库,提供了一系列模块和方法,比如:裁切,平移,旋转,改变尺寸等等.在PIL库中,任何一个图像都是用 Image对象来表示的,所以要加载一张图片,最简单的形式如下: from PIL import Image image = Image.open("1.jp

C# 登录验证码

基于字符的图片验证码是系统在用户访问页面时随机产生的一个图像,图像中包含数字.字母或其他文字.其中字符序列与背景图像进行信息融合,添加干扰噪声,或对图像进行混杂.扭曲.粘连.变形等处理,以增加图像识别的难度. 图片验证码的生成主要分成两个步骤: 1.生成随机字符串: 2.生成验证码图片. 1 public partial class CheckCodeImageExt : System.Web.UI.Page 2 { 3 protected void Page_Load(object sende