Magicodes.Sms是心莱团队封装的短信服务库,已提供Abp模块的封装。
名称 | 说明 | Nuget |
---|---|---|
Magicodes.Sms.Aliyun | 阿里云短信库 | |
Magicodes.Sms.Core | 短信核心库 | |
Magicodes.Sms.Aliyun.Abp | 阿里云短信Abp模块 |
如果使用Abp相关模块,则使用起来比较简单,具体您可以参考相关单元测试的编写。主要有以下步骤:
名称 | 说明 | Nuget |
---|---|---|
Magicodes.Sms.Aliyun.Abp | 阿里云短信Abp模块 |
[DependsOn(typeof(AliyunSmsModule))]
默认支持两种配置方式,配置文件和SettingManager。下面以配置文件为例,格式为:
{
"AliyunSmsSettings": {
"AccessKeyId": "",
"AccessKeySecret": "",
"SignName": "",
"TemplateCode": ""
}
}
通过容器获得ISmsTemplateSender,然后调用发送方法即可。如单元测试中:
private readonly ISmsTemplateSender _smsTemplateSender;
public SmsTest()
{
this._smsTemplateSender = Resolve<ISmsTemplateSender>();
}
[Theory]
[InlineData("1367197xxxx", "1234")]
public async Task SendCodeAsync(string phone, string code)
{
await _smsTemplateSender.SmsService.SendCodeAsync(phone, code);
}
AliyunSmsBuilder.Create()
//设置日志记录
.WithLoggerAction((tag, message) =>
{
Console.WriteLine(string.Format("Tag:{0}\tMessage:{1}", tag, message));
}).SetSettingsFunc(() =>
{
//TODO:请自行配置自己的配置
//如果是一个项目多个配置,请使用key来获取相关配置
return ConfigHelper.LoadConfig("aliyun_app");
}).Build();
[Theory(DisplayName = "短信发送测试")]
[InlineData("你的手机号码", "验证码")]
public async Task SendCodeAsync_Test(string phone, string code)
{
var smsService = new AliyunSmsService();
var result = await smsService.SendCodeAsync(phone, code);
result.Success.ShouldBeTrue();
}
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有