feat(captcha): 升级验证码校验流程与资源管理

- 引入MatchParam封装滑动轨迹及相关信息,提升扩展性。- 调整验证码生成与校验接口,以支持更精细的参数控制。
- 优化资源管理,提高验证码资源的加载效率。
- 更新文档与示例代码,以反映API的最新变化。BREAKING CHANGE: 验证码校验接口发生改变,现在需要传入MatchParam对象而非直接传入轨迹对象。这可能会影响直接调用验证码校验服务的客户端代码,需根据最新API文档进行适配。
This commit is contained in:
天爱有情
2024-08-19 16:26:18 +08:00
parent 9324cce657
commit 407bfe87b0
22 changed files with 118 additions and 53 deletions
@@ -11,6 +11,7 @@ import cloud.tianai.captcha.interceptor.CaptchaInterceptor;
import cloud.tianai.captcha.resource.ImageCaptchaResourceManager;
import cloud.tianai.captcha.validator.ImageCaptchaValidator;
import cloud.tianai.captcha.validator.common.model.dto.ImageCaptchaTrack;
import cloud.tianai.captcha.validator.common.model.dto.MatchParam;
/**
* @Author: 天爱有情
@@ -63,14 +64,23 @@ public interface ImageCaptchaApplication {
/**
* 匹配
*
* @param id 验证码的ID
* @param imageCaptchaTrack 滑动轨迹
* @param id 验证码的ID
* @param matchParam 匹配数据,包含鼠标轨迹,设备信息等
* @return 匹配成功返回true 否则返回false
*/
ApiResponse<?> matching(String id, ImageCaptchaTrack imageCaptchaTrack);
ApiResponse<?> matching(String id, MatchParam matchParam);
/**
* 兼容一下旧版本,新版本建议使用 {@link ImageCaptchaApplication#matching(String, ImageCaptchaTrack)}
* 兼容一下旧版本,新版本建议使用 {@link ImageCaptchaApplication#matching(String, MatchParam)}
*
* @param id 验证码的ID
* @param track 轨迹数据
* @return 匹配成功返回true 否则返回false
*/
ApiResponse<?> matching(String id, ImageCaptchaTrack track);
/**
* 兼容一下旧版本,新版本建议使用 {@link ImageCaptchaApplication#matching(String, MatchParam)}
*
* @param id id
* @param percentage 百分比数据
@@ -114,6 +124,7 @@ public interface ImageCaptchaApplication {
* @return CaptchaInterceptor
*/
CaptchaInterceptor getCaptchaInterceptor();
/**
* 设置 拦截器
*