package example.readme; import cloud.tianai.captcha.common.constant.CaptchaTypeConstant; import cloud.tianai.captcha.generator.ImageCaptchaGenerator; import cloud.tianai.captcha.generator.common.model.dto.ImageCaptchaInfo; import cloud.tianai.captcha.generator.impl.MultiImageCaptchaGenerator; import cloud.tianai.captcha.generator.impl.transform.Base64ImageTransform; 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.BasicCaptchaTrackValidator; import java.util.Map; public class Test { public static void main(String[] args) throws InterruptedException { ImageCaptchaResourceManager imageCaptchaResourceManager = new DefaultImageCaptchaResourceManager(); Base64ImageTransform imageTransform = new Base64ImageTransform(); ImageCaptchaGenerator imageCaptchaGenerator = new MultiImageCaptchaGenerator(imageCaptchaResourceManager,imageTransform).init(); /* 生成滑块验证码图片, 可选项 SLIDER (滑块验证码) ROTATE (旋转验证码) CONCAT (滑动还原验证码) WORD_IMAGE_CLICK (文字点选验证码) 更多验证码支持 详见 cloud.tianai.captcha.common.constant.CaptchaTypeConstant */ ImageCaptchaInfo imageCaptchaInfo = imageCaptchaGenerator.generateCaptchaImage(CaptchaTypeConstant.SLIDER); System.out.println(imageCaptchaInfo); // 负责计算一些数据存到缓存中,用于校验使用 // ImageCaptchaValidator负责校验用户滑动滑块是否正确和生成滑块的一些校验数据; 比如滑块到凹槽的百分比值 ImageCaptchaValidator imageCaptchaValidator = new BasicCaptchaTrackValidator(); // 这个map数据应该存到缓存中,校验的时候需要用到该数据 Map map = imageCaptchaValidator.generateImageCaptchaValidData(imageCaptchaInfo); } }