适用于发送验证码及校验验证码的场景(比如找回密码功能)
支持周期内限制最大发送次数,支持单次发送后最大校验错误次数
存储方案默认提供了Redis和MemoryCache实现,你也可以自己实现ICodeStorage来支持其它存储方案。
你可以在此处查看使用例子 https://github.com/fdstar/CheckCodeHelper/blob/master/src/CheckCodeHelper.Samples
Program.PrevDemo()为new显示声明方式实现的DemoComplexHelperTest为.Net Core依赖注入方式实现的DemoConsoleSender为自定义ICodeSender及ICodeSenderSupportAsync的例子
2021-11-30 Release
| CheckCodeHelper v1.0.6 |
|---|
鉴于IComplexContentFormatter在ComplexHelper中作为构造参数传入,其本身可能已包含如何构造要发送的文本内容,故调整ComplexHelper.ComplexSetting.ContentFormatters为空未设置时,不再抛出异常 |
2021-11-22 Release
| CheckCodeHelper v1.0.5 |
|---|
ComplexHelper公开读取配置的方法以支持某些特殊场景 |
ComplexContentFormatter调整唯一标志的组成方式,使其与ComplexHelper保持一致以减少字符串碎片 |
| CheckCodeHelper.Storage.Redis v1.0.2 |
ICodeStorage.RemovePeriodAsync同时移除周期限制及错误次数记录 |
| CheckCodeHelper.Storage.Memory v1.0.1 |
ICodeStorage.RemovePeriodAsync同时移除周期限制及错误次数记录 |
2021-11-03 Release
| CheckCodeHelper v1.0.4 |
|---|
增加ICodeSenderSupportAsync以支持ICodeSender.IsSupport异步场景,如果ICodeSender同时实现了ICodeSenderSupportAsync,则CodeHelper会通过ICodeSenderSupportAsync.IsSupportAsync判断SendResult.NotSupport |
修正ComplexHelper获取PeriodLimit时,如果未配置ComplexSetting.PeriodMaxLimits会导致ComplexSetting.PeriodLimitIntervalSeconds无效的问题 |
2021-10-20 Release
CheckCodeHelper.Storage.Redis v1.0.1 |
|---|
调整为通过Lua脚本合并执行Redis的多条更新指令 |
2021-10-18 Release
| CheckCodeHelper v1.0.3 |
|---|
增加EffectiveTimeDisplayedInContent以调整验证码有效期在发送内容中的展示方式,ComplexHelper已支持该枚举,ComplexSetting.EffectiveTimeDisplayed默认设置为Seconds,即在所有的发送内容中以秒对应的数字进行展示,设置为Auto时如果有效时间为整360秒或以上且可被360整除,则展示为对应的小时数,有效时间为整60秒或以上且可被60整除,则展示为对应的分钟数 |
SendResult.NotSupprot修正拼写错误为SendResult.NotSupport;VerificationResult.VerificationFailed简化为Failed。注意对于CheckCodeHelper这是破坏性调整,会造成升级后相关判断产生错误 |
| CheckCodeHelper.Sender.EMail v1.0.3 |
移除不必要的Subject Func,同步调整TextFormat及Subject到EMailMimeMessageSetting,注意对于EMail部分这是一个破坏性调整 |
| CheckCodeHelper.Sender.AlibabaSms v1.0.0 |
基于阿里模板短信的ICodeSender实现 |
2021-07-20 Release
| CheckCodeHelper v1.0.2 |
|---|
增加PeriodLimit.Interval以支持限制发送检验码的时间间隔 |
| CheckCodeHelper.Sender.Sms v1.0.1 |
升级依赖的RestSharp版本至106.12.0以解决潜在的安全问题 |
2021-07-17 Release
| CheckCodeHelper v1.0.1 |
|---|
增加ComplexHelper以统一在单个应用中校验码的发送与验证入口,支持按需调用指定的ICodeSender |
| CheckCodeHelper.Sender.EMail v1.0.2 |
增加Subject Func以支持ComplexHelper |
2021-07-15 Release
| CheckCodeHelper v1.0.0 |
|---|
| 主体功能 |
| CheckCodeHelper.Sender.Sms v1.0.0 |
基于非模板短信的ICodeSender实现 |
| CheckCodeHelper.Sender.EMail v1.0.1 |
基于EMail的ICodeSender实现 |
| CheckCodeHelper.Storage.Redis v1.0.0 |
基于Redis的ICodeStorage实现 |
| CheckCodeHelper.Storage.Memory v1.0.0 |
基于MemoryCache的ICodeStorage实现 |