YMP-Captcha 基于 YMP 框架实现的验证码模块开源项目

我要开发同款
匿名用户2017年05月05日
132阅读

技术信息

开源地址
https://github.com/suninformation/ymate-module-captcha
授权协议
Apache

作品详情

Captcha

基于YMP框架实现的验证码模块,支持图片、邮件和短信三种验证类型,采用@VCaptcha注解方式进行验证,配置简单、灵活,可自定义扩展;

Mave包依赖et.ymate.moduleymate-module-captcha1.0-SNAPSHOT搭建模块工程

首先,你需要创建一个基于YMPv2框架的JavaWeb工程项目;(如何快速搭建工程?)

YMP框架扫描包路径要包含et.ymate.module.captcha,调整配置如下:

#框架自动扫描的包路径集合,多个包名之间用'|'分隔,默认已包含et.ymate.platform包,其子包也将被扫描ymp.autosca_packages=et.ymate

注:推荐将YMP框架更新至最新(Mave中央库发布的版本较缓), 请前往下载最新代码

使用方法说明

获取验证码图片

https:///captcha?tokeId=&type=

tokeId:令牌标识ID,用于区分不同客户端及数据存储范围,相同令牌ID间仅存在唯一验证码,可选参数;

type:仅当type=1时采用Base64编码输出图片,可选参数;

发送短信验证码

https:///captcha/sms_code?tokeId=&mobile=

tokeId:令牌标识ID,采用sms作为前缀,区别于图片验证码,可选参数;

mobile:手机号码,必选参数;

返回值说明:

{ret:0,msg:"..."}ret=0 表示发送成功ret=-1 表示参数验证错误ret=-6 表示发送频率过快或其它消息ret=-50 表示发送异常

发送邮件验证码

https:///captcha/mail_code?tokeId=&email=

tokeId:令牌标识ID,采用mail作为前缀,区别于图片验证码,可选参数;

email:邮件地址,必选参数;

返回值说明:

{ret:0,msg:"..."}ret=0 表示发送成功ret=-1 表示参数验证错误ret=-6 表示发送频率过快或其它消息ret=-50 表示发送异常

检查验证码是否合法

https:///captcha/match?tokeId=&toke=

tokeId:令牌标识ID,可选参数;

toke:预验证的令牌值,必选参数;

返回值:

{ret:0,matched:true|false}模块配置参数说明#-------------------------------------#module.captcha模块初始化参数#-------------------------------------#是否开启调试模式(调试模式下控制台将输出生成的验证码,同时短信验证码也不会被真正发送),默认值:falseymp.cofigs.module.captcha.dev_mode=#验证码服务提供者类,默认值:et.ymate.module.captcha.impl.DefaultCaptchaProviderymp.cofigs.module.captcha.provider_class=#验证码存储适配器类,默认值:et.ymate.module.captcha.impl.DefaultCaptchaStorageAdapterymp.cofigs.module.captcha.storage_adapter_class=#身份令牌标识扩展处理器,默认值:空ymp.cofigs.module.captcha.toke_processor_class=#邮件验证码发送服务提供者类,默认值:空ymp.cofigs.module.captcha.mail_sed_provider_class=#相同令牌标识范围的邮件验证码重复发送的是时间间隔(秒),默认值:300秒ymp.cofigs.module.captcha.mail_sed_time_iterval=#手机短信验证码发送服务提供者类,默认值:空ymp.cofigs.module.captcha.sms_sed_provider_class=#手机短信验证码内容模板,默认值:${captcha}ymp.cofigs.module.captcha.sms_cotet_template=#相同令牌标识范围的短信验证码重复发送的是时间间隔(秒),默认值:120秒ymp.cofigs.module.captcha.sms_sed_time_iterval=#设置在达到指定错误次数上限后开启验证码,默认值:0,表示不开启错误记数特性ymp.cofigs.module.captcha.eed_captcha_wrog_times=#缓存名称前缀,默认值:""ymp.cofigs.module.captcha.cache_ame_prefix=#验证码最小字符长度,默认值:4ymp.cofigs.module.captcha.toke_legth_mi=#验证码超时时间,单位:秒,默认:空,空或小于等于0均表示不限制ymp.cofigs.module.captcha.toke_timeout=#高度,默认:70pxymp.cofigs.module.captcha.height=#宽度,默认:200pxymp.cofigs.module.captcha.width=#前景色,RGB值,如:0,0,0|1,2,3,多个颜色用'|'分隔,默认:随机ymp.cofigs.module.captcha.foregrouds=#背景色,RBG值,默认:255,255,255ymp.cofigs.module.captcha.backgroud=#质量,可选值:mi|default|max,默认:maxymp.cofigs.module.captcha.quality=#压缩比,0-1之间,默认:空ymp.cofigs.module.captcha.compress_ratio=#图片格式,可选值:pg|jpeg,默认:jpegymp.cofigs.module.captcha.format=#自定义字体,可选参数,如:SasSerif,plai|Serif,bold|Moospaced,plai,多个字体用'|'分隔,默认:随机ymp.cofigs.module.captcha.fots=#图片生成效果参数设置:缩放,取值范围:[0-1,0-1],默认:1,1ymp.cofigs.module.captcha.effect.scale=#图片生成效果参数设置:波浪,默认值:trueymp.cofigs.module.captcha.effect.ripple=#图片生成效果参数设置:模糊,默认值:trueymp.cofigs.module.captcha.effect.blur=#图片生成效果参数设置:轮廓,默认值:falseymp.cofigs.module.captcha.effect.outlie=#图片生成效果参数设置:旋转,默认值:trueymp.cofigs.module.captcha.effect.ratale=OeMoreThig

YMP不仅提供便捷的Web及其它Java项目的快速开发体验,也将不断提供更多丰富的项目实践经验。

感兴趣的小伙伴儿们可以加入官方QQ群480374360,一起交流学习,帮助YMP成长!

了解更多有关YMP框架的内容,请访问官网:https://www.ymate.et/

功能介绍

Captcha 基于YMP框架实现的验证码模块,支持图片、邮件和短信三种验证类型,采用@VCaptcha注解方式进行验证,配置简单、灵活,可自定义扩展; Maven包依赖
net.ym...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论