一、需要先开通短信服务
开通服务 按照要求一步一步完成即可
进入控制台之后需要先申请一个签名和模板
点击申请即可
需要等待审核员通过是才能使用
二、申请完成之后进入AccessKey管理
在此页面创建一个用户,此处要注意,此时一定要将key和sercret复制到一个文件中进行保存,添加成功后,当前的sercret将无法看到
需要给注册的用户设置一个权限 AliyunDysmsFullAccess
三、代码编写
需要在Visual Studio中通过NuGet包管理器界面搜索并安装上述两个包。
AlibabaCloud.OpenApiClient
AlibabaCloud.SDK.Dysmsapi
示例
这里使用的是单条发送,如果需要其他参数请参考短信发送API
public static class MessageHelper
{
private static string accesskeyId;
private static string accesskeySecret;
static MessageHelper()
{
accesskeyId = ConfigurationManager.AppSettings["aliyun:AccessKeyMessage"];//从Web.config中获取accesskeyId
accesskeySecret = ConfigurationManager.AppSettings["aliyun:AccessKeySecretMessage"];//从Web.config中获取accesskeySecret
}
//创建并返回一个 Client 对象,用于与阿里云短信服务进行交互
public static Client InitAscClinet()
{
Config config = new Config();
config.AccessKeyId = accesskeyId;
config.AccessKeySecret = accesskeySecret;
config.Endpoint = "dysmsapi.aliyuncs.com";//中国大陆地区使用阿里云短信服务
return new Client(config);
}
//发送短信
public static string transmission(string phoneNumbers)
{
try
{
Client client = InitAscClinet();
SendSmsRequest request = new SendSmsRequest();//创建 SendSmsRequest 对象
request.PhoneNumbers = phoneNumbers;
request.SignName = "爱秀短视频";//使用的签名
request.TemplateCode = "SMS_474245084";//使用的模板
string code = IdentifyingCode.CreateNumber(4);//生成的验证码
request.TemplateParam = string.Format("{{\"code\":\"{0}\"}}",//验证码 code);
SendSmsResponse sendSmsResponse = client.SendSms(request);
return code;
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.Message);
}
return null;
}
}