.NET Core----使用阿里云短信推送

时间:2019-08-28
本文章向大家介绍.NET Core----使用阿里云短信推送,主要包括.NET Core----使用阿里云短信推送使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

因为特殊的原因,容联云模板导致下架,所以公司让我研究一下阿里云的短信推送,废话不多说上干货!

一、引用阿里云短信官方的包

二、调用下面的方法

 public bool AliMessageCode(string phone, string val)
        {
            var msg = "";
            MessageCodeDto strJson = new MessageCodeDto();
            //注意刚刚下载的AccessKey的excel中的accessKeyId和accessSecret填入
            IClientProfile profile = DefaultProfile.GetProfile("default", "accesskey", "accesssecret");
            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", phone);
            request.AddQueryParameters("SignName", "你的模板名称");
            request.AddQueryParameters("TemplateCode", "模板id");
            MessageCodeRequest messageCode = new MessageCodeRequest()
            {
                code = val
            };
            var code = JsonHelper.SerializeObject(messageCode);
            request.AddQueryParameters("TemplateParam", code); //需为json格式
            // request.Protocol = ProtocolType.HTTP;
            try
            {
                CommonResponse response = client.GetCommonResponse(request);
                msg = Encoding.Default.GetString(response.HttpResponse.Content);
                strJson = JsonHelper.DeserializeJsonToObject<MessageCodeDto>(msg);
            }
            catch (ServerException e)
            {
                msg = e.ErrorMessage;
            }
            catch (ClientException e)
            {
                msg = e.ErrorMessage;
            }
            if (strJson.Code == "OK")
            {
                return true;
            }
            else
            {
                return false;
            }
        }

  三、调用             

                      /// <summary>
                      /// 短信推送
                     /// </summary>
                     /// <param name="phone">手机号/支持多个(阿里云文档写最多1000条,用","隔开)</param>
                     /// <param name="code">验证码(自定义)</param>
                    /// <returns></returns>

                   if (!_msg.AliMessageCode(phone, code)
                     {
                          /*获取验证码失败*/
                          sysCode = SysCode.GetCodeErr;
                     }             

  

原文地址:https://www.cnblogs.com/wuyabaibsd/p/11423239.html