关于阿里短信的一段源码

通过.NET CLI工具来安装核心库-------------------------
dotnet add package aliyun-net-sdk-core

   public class SMSController : ApiController
    {/// <summary>
    /// 发短信
    /// </summary>
    /// <returns></returns>
       [System.Web.Http.HttpGet]
        public JsonResult<CodeMsg> SendSMS(string No)
        {
            string AcKeyId =   ConfigurationManager.AppSettings["SMSKeyId"];
            string AcScrtId =  ConfigurationManager.AppSettings["SMSSCt"];
           
            string TemCode = new DALSMSSet().GetLast().SMSCode;//获取模板码
            string SignName = ConfigurationManager.AppSettings["SMSSignName"];

            CodeMsg msg = new CodeMsg();
            IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", AcKeyId, AcScrtId);
            DefaultAcsClient client = new DefaultAcsClient(profile);
            CommonRequest request = new CommonRequest();
            request.Method = MethodType.POST;
            request.Domain = "dysmsapi.aliyuncs.com";
            request.Version = "2017-05-25";
            request.Action = "SendSms";
            // request.Protocol = ProtocolType.HTTP;
            request.AddQueryParameters("PhoneNumbers",No);//电话号码
            request.AddQueryParameters("SignName", SignName);//签名
            request.AddQueryParameters("TemplateCode", TemCode);//模板Id
             //  request.AddQueryParameters("TemplateParam", $"{{\"code\":\"{Yanzhangma}\"}}");  //如果是验证码的话
            

            try
            {
                CommonResponse response = client.GetCommonResponse(request);
                msg.Code = 1;
                msg.Data = System.Text.Encoding.Default.GetString(response.HttpResponse.Content);
             }
            catch (Aliyun.Acs.Core.Exceptions.ServerException e)
            {
                msg.Code = 0;
                msg.Reson = e.Message;
               
            }
            catch (ClientException e)
            {
                msg.Code = 0;
                msg.Reson = e.Message;
            }
            return Json<CodeMsg>(msg);
        }
        /// <summary>
        ///添加模板
        /// </summary>
        /// <returns></returns>
       
        [System.Web.Http.HttpGet]
        public JsonResult<CodeMsg> AddModel(string Content)
        {
            string AccessKeyId = ConfigurationManager.AppSettings["SMSKeyId"];
            string serviceAddress = $"https://dysmsapi.aliyuncs.com/?Action=AddSmsTemplate&TemplateType=1&TemplateName=短信息&TemplateContent={Content}&AccessKeyId={AccessKeyId}";
            
            string AcScrtId = ConfigurationManager.AppSettings["SMSSCt"]; 
            string SignName = ConfigurationManager.AppSettings["SMSSignName"];

            CodeMsg msg = new CodeMsg();
            IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", AccessKeyId, AcScrtId);
            DefaultAcsClient client = new DefaultAcsClient(profile);
            CommonRequest request = new CommonRequest();
            request.Method = MethodType.POST;
            request.Domain = "dysmsapi.aliyuncs.com";
            request.Version = "2017-05-25";
            request.Action = "SendSms";
            // request.Protocol = ProtocolType.HTTP;
            request.AddQueryParameters("Action", "AddSmsTemplate");
            request.AddQueryParameters("TemplateType", "1");
            request.AddQueryParameters("TemplateName", "短信息");
            request.AddQueryParameters("TemplateContent", Content);
            request.AddQueryParameters("AccessKeyId", AccessKeyId);
            request.AddQueryParameters("Remark",DateTime.Now.ToString()+"的模板");


            try
            {
                CommonResponse response = client.GetCommonResponse(request);
                
                string Responsestr = System.Text.Encoding.Default.GetString(response.HttpResponse.Content);
                msg.Data =Responsestr;
                JObject jsonObj = JsonConvert.DeserializeObject(Responsestr) as JObject;
                string OutCode = jsonObj.Value<string>("TemplateCode");
                string OutErrorCode = jsonObj.Value<string>("Code");
                if (OutErrorCode.Equals("OK"))
                {
                    msg.Code = 1;
                    SMSSet model = new SMSSet();
                    model.Guid = Guid.NewGuid().ToString();
                    model.SMSCode = OutCode;
                    model.SMSContent = Content;
                    new DALSMSSet().Insert(model);
                }
                else
                {
                    msg.Code =0;
                    msg.Reson = Responsestr;
                }
               // if () { }
            }
            catch (Aliyun.Acs.Core.Exceptions.ServerException e)
            {
                msg.Code = 0;
                msg.Reson = e.Message;

            }
            catch (ClientException e)
            {
                msg.Code = 0;
                msg.Reson = e.Message;
            }
            return Json<CodeMsg>(msg);
           
        }

参考链接
https://help.aliyun.com/document_detail/112145.html?spm=a2c4g.215745.0.0.26f06cf0ha2B3G

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值