diff --git a/readme.md b/readme.md index 67bb3de..44fbd7d 100644 --- a/readme.md +++ b/readme.md @@ -49,6 +49,7 @@ ### 2. 使用 `ImageCaptchaGenerator`生成器生成验证码 ```java + package example.readme; import cloud.tianai.captcha.common.constant.CaptchaTypeConstant; @@ -387,8 +388,8 @@ public class Test8 { } } ``` -# qq群: 1021884609 +# qq群: 305532064 # 微信群: -![](https://minio.tianai.cloud/public/qun2.jpg?t=20230825) + ## 微信群加不上的话 加微信好友 微信号: youseeseeyou-1ttd 拉你入群 diff --git a/src/main/java/cloud/tianai/captcha/common/constant/CommonConstant.java b/src/main/java/cloud/tianai/captcha/common/constant/CommonConstant.java index 6d7ac63..274ec3e 100644 --- a/src/main/java/cloud/tianai/captcha/common/constant/CommonConstant.java +++ b/src/main/java/cloud/tianai/captcha/common/constant/CommonConstant.java @@ -14,7 +14,7 @@ public interface CommonConstant { /** * 默认的resource资源文件路径. */ - String DEFAULT_SLIDER_IMAGE_RESOURCE_PATH = "META-INF/cut-image/resource"; + String DEFAULT_SLIDER_IMAGE_RESOURCE_PATH = "META-INF/cut-image/resource"; /** * 默认的template资源文件路径. */ diff --git a/src/main/java/cloud/tianai/captcha/common/exception/ImageCaptchaException.java b/src/main/java/cloud/tianai/captcha/common/exception/ImageCaptchaException.java index db7ab78..3701ea7 100644 --- a/src/main/java/cloud/tianai/captcha/common/exception/ImageCaptchaException.java +++ b/src/main/java/cloud/tianai/captcha/common/exception/ImageCaptchaException.java @@ -5,7 +5,8 @@ package cloud.tianai.captcha.common.exception; * @date 2022/5/7 9:04 * @Description 图片验证码异常 */ -public class ImageCaptchaException extends RuntimeException{ +public class ImageCaptchaException extends RuntimeException { + public ImageCaptchaException() { } @@ -24,4 +25,5 @@ public class ImageCaptchaException extends RuntimeException{ public ImageCaptchaException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) { super(message, cause, enableSuppression, writableStackTrace); } + } diff --git a/src/main/java/cloud/tianai/captcha/common/response/ApiResponse.java b/src/main/java/cloud/tianai/captcha/common/response/ApiResponse.java index c0c2bf3..7719a4c 100644 --- a/src/main/java/cloud/tianai/captcha/common/response/ApiResponse.java +++ b/src/main/java/cloud/tianai/captcha/common/response/ApiResponse.java @@ -16,6 +16,7 @@ public class ApiResponse implements Serializable { public static final ApiResponse SUCCESS; static { + //默认 CodeDefinition definition = ApiResponseStatusConstant.SUCCESS; SUCCESS = new ApiResponse(definition.getCode(), definition.getMessage(), null); } diff --git a/src/main/java/cloud/tianai/captcha/common/response/ApiResponseStatusConstant.java b/src/main/java/cloud/tianai/captcha/common/response/ApiResponseStatusConstant.java index b026e36..93fd6e5 100644 --- a/src/main/java/cloud/tianai/captcha/common/response/ApiResponseStatusConstant.java +++ b/src/main/java/cloud/tianai/captcha/common/response/ApiResponseStatusConstant.java @@ -15,12 +15,24 @@ public interface ApiResponseStatusConstant { */ CodeDefinition SUCCESS = new CodeDefinition(200, "OK"); + /** + * 无效参数 + */ CodeDefinition NOT_VALID_PARAM = new CodeDefinition(403, "无效参数"); + /** + * 未知的内部错误 + */ CodeDefinition INTERNAL_SERVER_ERROR = new CodeDefinition(500, "未知的内部错误"); + /** + * 已失效 + */ CodeDefinition EXPIRED = new CodeDefinition(4000, "已失效"); + /** + * 基础校验失败 + */ CodeDefinition BASIC_CHECK_FAIL = new CodeDefinition(4001, "基础校验失败"); diff --git a/src/main/java/cloud/tianai/captcha/resource/AbstractResourceProvider.java b/src/main/java/cloud/tianai/captcha/resource/AbstractResourceProvider.java index a2236d8..bcc5352 100644 --- a/src/main/java/cloud/tianai/captcha/resource/AbstractResourceProvider.java +++ b/src/main/java/cloud/tianai/captcha/resource/AbstractResourceProvider.java @@ -10,6 +10,7 @@ import java.io.InputStream; * @Description 抽象的ResourceProvider */ public abstract class AbstractResourceProvider implements ResourceProvider { + @Override public InputStream getResourceInputStream(Resource data) { InputStream resourceInputStream = doGetResourceInputStream(data); @@ -26,4 +27,5 @@ public abstract class AbstractResourceProvider implements ResourceProvider { * @return InputStream */ public abstract InputStream doGetResourceInputStream(Resource data); + } diff --git a/src/main/java/cloud/tianai/captcha/resource/impl/LocalMemoryResourceStore.java b/src/main/java/cloud/tianai/captcha/resource/impl/LocalMemoryResourceStore.java index a67834e..c1b1a69 100644 --- a/src/main/java/cloud/tianai/captcha/resource/impl/LocalMemoryResourceStore.java +++ b/src/main/java/cloud/tianai/captcha/resource/impl/LocalMemoryResourceStore.java @@ -16,6 +16,7 @@ import java.util.concurrent.ThreadLocalRandom; * @Description 默认的资源存储 */ public class LocalMemoryResourceStore implements ResourceStore { + private static final String TYPE_TAG_SPLIT_FLAG = "|"; /** 用于检索 type和tag. */ diff --git a/src/main/java/cloud/tianai/captcha/validator/impl/BasicCaptchaTrackValidator.java b/src/main/java/cloud/tianai/captcha/validator/impl/BasicCaptchaTrackValidator.java index 8362ce1..28c3d81 100644 --- a/src/main/java/cloud/tianai/captcha/validator/impl/BasicCaptchaTrackValidator.java +++ b/src/main/java/cloud/tianai/captcha/validator/impl/BasicCaptchaTrackValidator.java @@ -16,6 +16,7 @@ import java.util.List; * @Description 基本的行为轨迹校验 */ public class BasicCaptchaTrackValidator extends SimpleImageCaptchaValidator { + public static final CodeDefinition DEFINITION = new CodeDefinition(50001, "basic check fail"); public BasicCaptchaTrackValidator() { diff --git a/src/main/test/java/example/readme/SimpleDemo.java b/src/main/test/java/example/readme/SimpleDemo.java index 67f924c..2359619 100644 --- a/src/main/test/java/example/readme/SimpleDemo.java +++ b/src/main/test/java/example/readme/SimpleDemo.java @@ -14,6 +14,9 @@ import cloud.tianai.captcha.validator.impl.BasicCaptchaTrackValidator; import java.util.Map; +/** +* 基础 SimpleDemo +*/ public class SimpleDemo { public static void main(String[] args) throws InterruptedException { diff --git a/src/main/test/java/example/readme/Test3.java b/src/main/test/java/example/readme/Test3.java index 5a11b20..0c0575a 100644 --- a/src/main/test/java/example/readme/Test3.java +++ b/src/main/test/java/example/readme/Test3.java @@ -18,8 +18,10 @@ public class Test3 { ImageCaptchaGenerator imageCaptchaGenerator = new MultiImageCaptchaGenerator(imageCaptchaResourceManager,imageTransform).init(true); // 生成 具有混淆的 滑块验证码 (目前只有滑块验证码支持混淆滑块, 旋转验证,滑动还原,点选验证 均不支持混淆功能) ImageCaptchaInfo imageCaptchaInfo = imageCaptchaGenerator.generateCaptchaImage(GenerateParam.builder() + // 设置验证码类型 .type(CaptchaTypeConstant.SLIDER) .templateFormatName("jpeg") + // 设置背景图片格式 .backgroundFormatName("png") // 是否添加混淆滑块 .obfuscate(true) diff --git a/src/main/test/java/example/readme/Test5.java b/src/main/test/java/example/readme/TestImageCaptcha.java similarity index 95% rename from src/main/test/java/example/readme/Test5.java rename to src/main/test/java/example/readme/TestImageCaptcha.java index 4998ab6..01d0061 100644 --- a/src/main/test/java/example/readme/Test5.java +++ b/src/main/test/java/example/readme/TestImageCaptcha.java @@ -8,7 +8,10 @@ import cloud.tianai.captcha.resource.impl.DefaultImageCaptchaResourceManager; import cloud.tianai.captcha.resource.impl.provider.ClassPathResourceProvider; import cloud.tianai.captcha.resource.impl.provider.URLResourceProvider; -public class Test5 { +/** +* 图片验证码测试 +*/ +public class TestImageCaptcha { public static void main(String[] args) { ImageCaptchaResourceManager imageCaptchaResourceManager = new DefaultImageCaptchaResourceManager(); // 通过资源管理器或者资源存储器