Happy Captcha是一款易于使用的Java验证码软件包,旨在花最短的时间,最少的代码量,实现Web站点的验证码功能。Happy Captcha完全遵循Apache 2.0开源许可协议,你可以自由使用该软件,如您在使用Happy Captcha时发现软件的任何缺陷,欢迎随时与我联系。
Happy Capthca的源代码已托管到Github和Gitee,你可以访问下面的链接获取更多信息:
如果你想快速体验Happy Captcha的功能,可通过下列方式获取Happy-Captcha依赖:
Maven
<dependency>
<groupId>com.ramostear</groupId>
<artifactId>Happy-Captcha</artifactId>
<version>1.0.1</version>
</dependency>
Gradle
implementation 'com.ramostear:Happy-Captcha:1.0.1'
Happy Captcha提供了图片和动画两种展现形式,验证码内容包括中文(收录3500个常用汉字),阿拉伯数字(0~9),中文数字(零至九),中文大写数字(零至玖),数字与字母混合(0~9-a~z-A~Z),数字与小写字母混合(0~9-a~z),数字与大写字母混合(0~9-A~Z),纯小写字母,纯大写字母,大小写字母混合以及运算表达式(阿拉伯数字运算表达式和中文运算表达式)等12种类型。
CaptchaType | IMAGE | ANIMATION |
---|---|---|
CHINESE | ||
NUMBER | ||
NUMBER_ZH_CN | ||
NUMBER_ZH_HK | ||
DEFAULT | ||
WORD | ||
WORD_LOWER | ||
WORD_UPPER | ||
WORD_NUMBER_LOWER | ||
WORD_NUMBER_UPPER | ||
ARITHMETIC | ||
ARITHMETIC_ZH |
如果你的项目使用的是Maven进行依赖管理,你只需向pom.xml文件添加下面的配置即可:
<dependency>
<groupId>com.ramostear</groupId>
<artifactId>Happy-Captcha</artifactId>
<version>1.0.1</version>
</dependency>
Gradle用户则可以通过引入如下的配置获取Happy Captcha:
implementation 'com.ramostear:Happy-Captcha:1.0.1'
HappyCaptcha在设计时力求过程的简洁,在默认情况下,你只需要书写一行代码即可生成漂亮的验证码图片。下面是HappyCaptcha的使用示例:
@Controller
public class HappyCaptchaController{
@GetMapping("/captcha")
public void happyCaptcha(HttpServletRequest reqeust,HttpServletResponse response){
HappyCaptcha.require(request,response).build().finish();
}
}
对于HappyCaptcha而言,只有request和response是必须提供的参数,其余参数都可以使用缺省值。
在默认情况下,HappyCaptcha生成的验证码以图片形式展现,内容为0~9-a~z-A~Z的字符随机组合,字符长度为5,图片宽度为160,高度为50,字体为微软雅黑。
用户输入的验证码校验是一个必不可少的环节,HappyCaptcha内置了对用户输入的验证码校验功能。下面是验证码校验示例:
@Controller
public class CaptchaController{
@PostMapping("/verify")
public String verify(String code,HttpServletRequest request){
//Verification Captcha
boolean flag = HappyCaptcha.verification(request,code,true);
if(flag){
//Other operations...
}
}
}
如果在校验过程中需要忽略字母大小写,第三个参数设置为true,如果需要强校验,则设置为false。
当验证码被使用后,你可以通过HappyCaptcha类种的remove()方法将Session中存放的验证码清理掉。下面是清理验证码的代码示例:
@Controller
public class HappyCaptchaController{
@GetMapping("/remove/captcha")
public void removeCaptcha(HttpServletRequest request){
HappyCaptcha.remove(request);
}
}
除HappyCaptcha提供的默认方法,你也可以在需要操作的地方,手动清理Session中存放的验证码,HappyCaptcha验证码的Key为“happy-captcha”。
通过前面的内容,我们已经了解到如何快熟的安装并使用HappyCaptcha生成验证码。在接下的内容当中,将介绍HappyCaptcha更详细的内容。
HappyCaptcha提供两种验证码展现形式:图片和动画。默认的展现形式为图片,可以通过style()方法修改默认值。style()方法的值由CaptchaStyle类提供,可供选择的值有IMG和ANIM。style()使用示例如下:
HappyCaptcha.require(request,response)
.style(CaptchaStyle.ANIM)
.build().finish();
若展现形式为图片,则style(CaptchaStyle.IMG)可以省略。
HappyCaptcha一共提供了12种验证码类型,你可以自由选择其中的一种类型作为验证码的内容形式。默认情况下,验证码使用数字和大小写字母的混合形式。验证码类型值由CaptchaType类提供,内容如下表:
值 | 说明 |
---|---|
DEFAULT | 数字、大小写字母随机组合 |
ARITHMETIC | 加、减、乘算数运算表达式 |
ARITHMETIC_ZH | 中文简体加、减、乘算数运算表达式描述 |
CHINESE | 常见汉字(3500个)随机组合 |
NUMBER | 0~9数字随机组合 |
NUMBER_ZH_CN | 中文数字(零至九)随机组合 |
NUMBER_ZH_HK | 中文繁体数字(零至玖)随机组合 |
WORD | 大小写字母随机组合 |
WORD_LOWER | 小写字母随机组合 |
WORD_UPPER | 大写字母随机组合 |
WORD_NUMBER_LOWER | 数字、小写字母随机组合 |
WORD_NUMBER_UPPER | 数字、大写字母随机组合 |
type()使用示例如下:
HappyCaptcha.require(request,response)
.type(CaptchaType.CHINESE)
.build().finish();
length()方法用于设置验证码字符长度,默认情况下缺省值为5。你可以通过以下方式对验证码字符长度进行控制:
HappyCaptcha.require(request,response)
.length(6)
.build().finish();
width()方法可对验证码图片的宽度进行调节,默认的缺省值为160。使用方式如下:
HappyCaptcha.require(request,response)
.width(180)
.build().finish();
同width()方法一样,height()方法用于设置验证码图片的高度,默认缺省值为50。使用方式如下:
HappyCaptcha.require(request,response)
.height(60)
.build().finish();
如果你想改变验证码的字体,可通过font()方法进行设置,默认缺省字体为微软雅黑。HappyCaptcha内置了四种字体,可以通过Fonts类进行调用。
HappyCaptcha.require(request,response)
.font(Fonts.getInstance().zhFont())
.build().finish();
上面介绍了如何修改单个配置,HappyCaptcha支持链式调用,可同时对验证码的多个属性进行设置。例如:
@GetMapping("/captcha")
public void captcha(HttpServletRequest req,HttpServletResponse res){
HappyCaptcha.require(req,res)
.style(CaptchaStyle.ANIM) //设置展现样式为动画
.type(CaptchaType.CHINESE) //设置验证码内容为汉字
.length(6) //设置字符长度为6
.width(220) //设置动画宽度为220
.height(80) //设置动画高度为80
.font(Fonts.getInstance().zhFont()) //设置汉字的字体
.build().finish(); //生成并输出验证码
}
若验证码的类型为ARITHMETIC或ARITHMETIC_ZH,可省略验证码长度的设置。算术运算表达式的长度为5。
1、安装 pip instsall django-simple-captcha 2、设置 1)在settings中,将‘captcha’注册到app列表里: INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django
pom文件 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.o
说明 获取成功,验证码会发送到会员微信中,再由收银员输入到界面中,再执行交易协议5.3 请求地址 http://api.dc78.cn/Api/mb_vericode 请求方式 GET 请求参数 参数 参数名称 必填 描述 范例 amt 交易金额 mbno 卡号 输入或扫码 action 0:充值,1:消费(2015-07-07增加) 返回 { "status":1, "info":"获取成功"
获取成功,验证码会发送到会员微信中,再由收银员输入到界面中,再执行交易协议5.3 请求参数说明 参数 描述 必填 示例值 类型 最大长度 action 接口参数组 是 object └action 需要调用的接口名称 是 mb_vericode string get GET参数组,本组参数需要参与签名 是 object └action 0:充值,1:消费 是 0 number └mbno 会员卡号
本文向大家介绍JavaScript实现简单验证码,包括了JavaScript实现简单验证码的使用技巧和注意事项,需要的朋友参考一下 JavaScript实现简单验证码,供大家参考,具体内容如下 验证流程图 HTML部分 JavaScript部分 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
本文向大家介绍javaweb servlet生成简单验证码,包括了javaweb servlet生成简单验证码的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了javaweb servlet生成验证码的具体代码,供大家参考,具体内容如下 运行截图: 更多关于验证码的文章请点击查看:《java验证码》 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
本文向大家介绍asp.net验证码的简单制作,包括了asp.net验证码的简单制作的使用技巧和注意事项,需要的朋友参考一下 实际上关于asp.net验证码制作的文章已经很多很多了,但是今天还是要和大家继续分享,亲,可以综合几篇实例,编写出适用于自己网站的ASP.NET验证码,大概也就两大部分: 先建立一个asp.net窗体ValidateCode.aspx;不写任何东西。直接在后台Validate
本文向大家介绍js+html制作简单验证码,包括了js+html制作简单验证码的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了JavaScript制作验证码的具体代码,供大家参考,具体内容如下 另一个js验证码的部分代码: 附效果图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。
接口说明 验证验证码 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 GET /authcenter/api/verify/v1.0.0/check
本文向大家介绍JavaScript实现仿网易通行证表单验证,包括了JavaScript实现仿网易通行证表单验证的使用技巧和注意事项,需要的朋友参考一下 介绍一下表单验证,不错哦: 如图 CSS代码 js html 以上所述就是本文的全部内容了,希望大家能够喜欢。