- Java锁的逻辑(结合对象头和ObjectMonitor)
- 还在用饼状图?来瞧瞧这些炫酷的百分比可视化新图形(附代码实现)⛵
- 自动注册实体类到EntityFrameworkCore上下文,并适配ABP及ABPVNext
- 基于Sklearn机器学习代码实战
《上一篇》 介绍了Xmtool工具库中的Web操作类库,今天我们继续为大家介绍其中的图形验证码类库.
图形验证码是为了抵御恶意攻击出现的一种设计;例如用户登录、修改密码等场景。在本类库中,将图形验证码的逻辑进行了抽象封装,能够通过同一套方法使用不同类型的图形验证码;让增加图形验证码逻辑变得更方便友好,且切换不同类型的图形验证码更简易.
使用时,需要先获取图形验证码类库对象:
ICaptcha captcha = Xmtool.Captcha(CaptchaKind.Character); // 字符验证码
// 或者
ICaptcha captcha = Xmtool.Captcha(CaptchaKind.Sliding); // 滑块验证码
ICaptcha接口提供了配置、生成和校验 3 个方法,通过这 3 个方法可以很方便的将图形验证码能力嵌入到自己的软件功能中.
Config方法 。
Generate方法 。
Validate方法 。
Type属性 。
option :生成参数配置;字符验证码使用 CharacterCaptchaOption 配置类,滑块验证码使用 SlidingCaptchaOption 配置类.
ICaptcha captcha = Xmtool.Captcha(CaptchaKind.Character);
CharacterCaptchaOption option = new CharacterCaptchaOption();
option.BackColor = Color.Blue;
option.BorderColor = Color.DarkBlue;
captcha.Config(option);
// TODO
data :生成数据设定,默认不设置将随机生成;字符验证码使用 CharacterCaptchaData 类,滑块验证码使用 SlidingCaptchaData 类.
将返回生成的图片数据(Base64格式)和相关校验性数据.
ICaptcha captcha = Xmtool.Captcha(CaptchaKind.Character);
CharacterCaptchaData data = new CharacterCaptchaData();
data.Code = "1234";
CaptchaResult result = captcha.Generate(data);
// TODO
ICaptcha captcha = Xmtool.Captcha(CaptchaKind.Character);
CaptchaResult result = captcha.Generate();
bool ok = captcha.Validate(result.ValidationData, "用户输入数据");
if (ok)
{
// TODO
}
最后此篇关于开源.NetCore通用工具库Xmtool使用连载-图形验证码篇的文章就讲到这里了,如果你想了解更多关于开源.NetCore通用工具库Xmtool使用连载-图形验证码篇的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我正在尝试找到一种方法来使该算法同时运行。到目前为止,它只有 1 个 for 循环来读取每个文件,然后为每个文件创建一个进程。 我相信这个算法是按顺序运行的,这不是我想要的......我考虑创建一个外
我知道 asked 已经有类似的问题了。但是那个解决方案不适合我。 我有两个包含很多字段的 POJO: @JsonInclude(JsonInclude.Include.NON_NULL) publi
我是一名优秀的程序员,十分优秀!