1.5.0重构;
修复一大堆已知问题, 优化代码, 增加 application 类, 重构拦截器组件, 添加缓存模块,
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
package example.readme;
|
||||
|
||||
import cloud.tianai.captcha.application.DefaultImageCaptchaApplication;
|
||||
import cloud.tianai.captcha.application.ImageCaptchaApplication;
|
||||
import cloud.tianai.captcha.application.ImageCaptchaProperties;
|
||||
import cloud.tianai.captcha.application.vo.CaptchaResponse;
|
||||
import cloud.tianai.captcha.application.vo.ImageCaptchaVO;
|
||||
import cloud.tianai.captcha.cache.CacheStore;
|
||||
import cloud.tianai.captcha.cache.impl.LocalCacheStore;
|
||||
import cloud.tianai.captcha.generator.ImageCaptchaGenerator;
|
||||
import cloud.tianai.captcha.generator.impl.MultiImageCaptchaGenerator;
|
||||
import cloud.tianai.captcha.interceptor.CaptchaInterceptor;
|
||||
import cloud.tianai.captcha.interceptor.CaptchaInterceptorGroup;
|
||||
import cloud.tianai.captcha.interceptor.EmptyCaptchaInterceptor;
|
||||
import cloud.tianai.captcha.interceptor.impl.BasicTrackCaptchaInterceptor;
|
||||
import cloud.tianai.captcha.interceptor.impl.ParamCheckCaptchaInterceptor;
|
||||
import cloud.tianai.captcha.resource.ImageCaptchaResourceManager;
|
||||
import cloud.tianai.captcha.resource.impl.DefaultImageCaptchaResourceManager;
|
||||
import cloud.tianai.captcha.validator.ImageCaptchaValidator;
|
||||
import cloud.tianai.captcha.validator.impl.SimpleImageCaptchaValidator;
|
||||
|
||||
public class ApplicationTest {
|
||||
|
||||
public static void main(String[] args) {
|
||||
ImageCaptchaResourceManager imageCaptchaResourceManager = new DefaultImageCaptchaResourceManager();
|
||||
ImageCaptchaGenerator generator = new MultiImageCaptchaGenerator(imageCaptchaResourceManager);
|
||||
generator.init(true);
|
||||
ImageCaptchaValidator imageCaptchaValidator = new SimpleImageCaptchaValidator();
|
||||
CacheStore cacheStore = new LocalCacheStore();
|
||||
ImageCaptchaProperties prop = new ImageCaptchaProperties();
|
||||
CaptchaInterceptorGroup group = new CaptchaInterceptorGroup();
|
||||
group.addInterceptor(new ParamCheckCaptchaInterceptor());
|
||||
group.addInterceptor(new BasicTrackCaptchaInterceptor());
|
||||
|
||||
ImageCaptchaApplication application = new DefaultImageCaptchaApplication(generator, imageCaptchaValidator, cacheStore, prop, group);
|
||||
|
||||
CaptchaResponse<ImageCaptchaVO> res = application.generateCaptcha("SLIDER");
|
||||
System.out.println(res);
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
package example.readme;
|
||||
|
||||
import cloud.tianai.captcha.common.AnyMap;
|
||||
import cloud.tianai.captcha.common.constant.CaptchaTypeConstant;
|
||||
import cloud.tianai.captcha.generator.ImageCaptchaGenerator;
|
||||
import cloud.tianai.captcha.generator.ImageTransform;
|
||||
@@ -26,7 +27,7 @@ public class SimpleDemo {
|
||||
ImageCaptchaInfo imageCaptchaInfo = imageCaptchaGenerator.generateCaptchaImage(CaptchaTypeConstant.SLIDER);
|
||||
|
||||
// 这个数据是根据当前生成的这条验证码数据生成对应的验证数据, 该数据要存到缓存中
|
||||
Map<String, Object> map = imageCaptchaValidator.generateImageCaptchaValidData(imageCaptchaInfo);
|
||||
AnyMap map = imageCaptchaValidator.generateImageCaptchaValidData(imageCaptchaInfo);
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
package example.readme;
|
||||
|
||||
import cloud.tianai.captcha.common.AnyMap;
|
||||
import cloud.tianai.captcha.validator.common.model.dto.ImageCaptchaTrack;
|
||||
import cloud.tianai.captcha.validator.impl.BasicCaptchaTrackValidator;
|
||||
|
||||
@@ -10,7 +11,7 @@ public class Test2 {
|
||||
BasicCaptchaTrackValidator sliderCaptchaValidator = new BasicCaptchaTrackValidator();
|
||||
|
||||
ImageCaptchaTrack imageCaptchaTrack = null;
|
||||
Map<String, Object> map = null;
|
||||
AnyMap map = null;
|
||||
Float percentage = null;
|
||||
// 用户传来的行为轨迹和进行校验
|
||||
// - imageCaptchaTrack为前端传来的滑动轨迹数据
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package example.readme;
|
||||
|
||||
import cloud.tianai.captcha.common.constant.CaptchaTypeConstant;
|
||||
import cloud.tianai.captcha.generator.common.constant.SliderCaptchaConstant;
|
||||
import cloud.tianai.captcha.generator.impl.StandardSliderImageCaptchaGenerator;
|
||||
import cloud.tianai.captcha.resource.ImageCaptchaResourceManager;
|
||||
import cloud.tianai.captcha.resource.ResourceStore;
|
||||
import cloud.tianai.captcha.resource.common.model.dto.Resource;
|
||||
@@ -16,8 +16,8 @@ public class Test6 {
|
||||
ResourceStore resourceStore = imageCaptchaResourceManager.getResourceStore();
|
||||
// 添加滑块验证码模板.模板图片由三张图片组成
|
||||
ResourceMap template1 = new ResourceMap("default", 4);
|
||||
template1.put(SliderCaptchaConstant.TEMPLATE_ACTIVE_IMAGE_NAME, new Resource(ClassPathResourceProvider.NAME, "/active.png"));
|
||||
template1.put(SliderCaptchaConstant.TEMPLATE_FIXED_IMAGE_NAME, new Resource(ClassPathResourceProvider.NAME, "/fixed.png"));
|
||||
template1.put(StandardSliderImageCaptchaGenerator.TEMPLATE_ACTIVE_IMAGE_NAME, new Resource(ClassPathResourceProvider.NAME, "/active.png"));
|
||||
template1.put(StandardSliderImageCaptchaGenerator.TEMPLATE_FIXED_IMAGE_NAME, new Resource(ClassPathResourceProvider.NAME, "/fixed.png"));
|
||||
resourceStore.addTemplate(CaptchaTypeConstant.SLIDER, template1);
|
||||
// 模板与三张图片组成 滑块、凹槽、背景图
|
||||
// 同样默认支持 classpath 和 url 两种获取图片资源, 如果想扩展可实现 ResourceProvider 接口,进行自定义扩展
|
||||
|
||||
Reference in New Issue
Block a user