sms4j V2.1.0版本即将发布,本次更新带来了更多的新特性,一起来看一下吧
新特性
- 新增天翼云短信支持
V 2.1.0版本再添新支持厂商,天翼云短信,在新版本中,小伙伴们可以使用天翼云短信啦 - 添加solon框架支持
solon是一个非常优秀的国产框架,作者也是一个很强大的男人,目前solon框架已经得到了多家军工企业的青睐,没准未来会与spring平分天下哦 - SupplierFactory添加一个通用的set方法
对于想要传值来构建不同实现类型的小伙伴来说,每个厂商一个set方法用起来不太方便,这里我们整合了一个完整的set方法,可以实现所有厂商的set - 添加负载均衡工具
在本次的版本中添加了一个实验性的新特性,短信负载均衡,当你有多个厂商同时存在,并且不关注本次短信使用哪个厂商发送时,可以使用该工具,工具采用平滑加权负载均衡算法实现,可以根据设置的权重,自动选择托管中的短信服务 - 添加了一个静态方法用于获取LinkedHashMap实例
很多人并不常用LinkedHashMap,为了方便使用和记忆,我们添加了用于获取它的实例,位于
org.dromara.sms4j.comm.utils.SmsUtil
类中的getNewMap()
修复
- 修复云片短信未能如期创建实现对象的问题
在先前的版本中我们发现,云片短信并未能如期的创建一个完整的实现,我们在这个版本中对其进行了修复 - 修复亿美短信返回值异常
在2.0.2版本中,亿美短信的返回值在某些情况下存在异常(比如请求的url错误时),在这个版本中我们对此进行了修复 - 修复阿里云短信返回值异常
在先前的版本中,阿里云短信的返回值未能如期的通过SmsResponse对象返回,而是打印在了log中
优化
- 优化了厂商短信的实现
先前厂商的实现类中存在大量的重复实现方法,造成了大量的冗余代码,我们将它抽离了出来,在Impl和SmsBlend之间添加了一个抽象类,基础的实现了这些重复的方法 - 优化javax加密包使用
- 部分短信发送的返回值添加了非空判断
- 优化阿里云实现的部分代码
已知问题
在高频调用阿里云短信时,有较低的概率会返回签名不一致的问题,导致该问题的原因是阿里云官方签名所用时间与本地时间存在误差,目前正在整理解决办法