.NET调用阿里云短信接口保姆级别教学

请添加图片描述

阿里官方文档传送门

1.登录阿里云,开通短信服务
开通短信服务传送门

2.进入国内短信发送控制台
短信发送控制台
在这里插入图片描述

3.没有资质的话需要申请资质,申请完资质后需要申请签名,申请签名之后才能申请模板,现在关于这些申请会比之前严格很多
在这里插入图片描述
在这里插入图片描述

4.当以上信息都有了后,就可以前往控制台进行调试了
Demo传送门
在这里插入图片描述
5.调用成功后,我们就拿到了一个Demo

// This file is auto-generated, don't edit it. Thanks.

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;

using Tea;
using Tea.Utils;


namespace AlibabaCloud.SDK.Sample
{
    public class Sample 
    {

        /**
         * 使用AK&SK初始化账号Client
         * @return Client
         * @throws Exception
         */
        public static AlibabaCloud.SDK.Dysmsapi20170525.Client CreateClient()
        {
            // 工程代码泄露可能会导致 AccessKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考。
            // 建议使用更安全的 STS 方式,更多鉴权访问方式请参见:https://help.aliyun.com/document_detail/378671.html。
            AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config
            {
            //申请到的key 如果不想把key放到环境变量中,可以直接写,先测试
                // 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。
                AccessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"),
                // 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。
                AccessKeySecret = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"),
            };
            // Endpoint 请参考 https://api.aliyun.com/product/Dysmsapi
            config.Endpoint = "dysmsapi.aliyuncs.com";
            return new AlibabaCloud.SDK.Dysmsapi20170525.Client(config);
        }

        public static void Main(string[] args)
        {
            AlibabaCloud.SDK.Dysmsapi20170525.Client client = CreateClient();
            AlibabaCloud.SDK.Dysmsapi20170525.Models.SendSmsRequest sendSmsRequest = new AlibabaCloud.SDK.Dysmsapi20170525.Models.SendSmsRequest
            {
                PhoneNumbers = "手机号",
                SignName = "签名",
                TemplateCode = "模板",
                TemplateParam = "模板内的值,以字典json方式传",
            };
            AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
            try
            {
                // 复制代码运行请自行打印 API 的返回值
                client.SendSmsWithOptions(sendSmsRequest, runtime);
            }
            catch (TeaException error)
            {
                // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
                // 错误 message
                Console.WriteLine(error.Message);
                // 诊断地址
                Console.WriteLine(error.Data["Recommend"]);
                AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
            }
            catch (Exception _error)
            {
                TeaException error = new TeaException(new Dictionary<string, object>
                {
                    { "message", _error.Message }
                });
                // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
                // 错误 message
                Console.WriteLine(error.Message);
                // 诊断地址
                Console.WriteLine(error.Data["Recommend"]);
                AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
            }
        }


    }
}

6.如果你没有key的话,你可以前往这边文章,学习开通
阿里人脸1:1教程

7.这时候因为没有引用包,肯定会报错的
SDK安装传送门

Install-Package AlibabaCloud.SDK.Dysmsapi20170525 -Version 2.0.24

在这里插入图片描述
在这里插入图片描述
8.接下来就可以在本地调试了,需要注意的是需要保障账户中有余额

  • 12
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以使用阿里云提供的 SDK,或者手动发送 HTTP 请求调用阿里云短信接口。以下是使用 SDK 的步骤: 1. 在 Visual Studio 中创建一个 .NET MVC 项目。 2. 在 NuGet 包管理器中搜索“Aliyun.SDK.Core”和“Aliyun.SDK.Dysmsapi”。安装这两个包。 3. 在 App.config 或 Web.config 文件中添加阿里云短信接口的配置信息,包括 AccessKeyId、AccessKeySecret、SignName 和 TemplateCode。 4. 在 MVC 控制器中实例化短信 API 客户端,并调用 SendSms 方法发送短信。 以下是样例代码: ```csharp using Aliyun.Acs.Core; using Aliyun.Acs.Core.Exceptions; using Aliyun.Acs.Core.Profile; using Aliyun.Acs.Dysmsapi.Model.V20170525; public class SmsController : Controller { public ActionResult SendSms(string phoneNumber, string message) { try { IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", "<your-access-key-id>", "<your-access-key-secret>"); DefaultAcsClient client = new DefaultAcsClient(profile); SendSmsRequest request = new SendSmsRequest(); request.PhoneNumbers = phoneNumber; request.SignName = "<your-sign-name>"; request.TemplateCode = "<your-template-code>"; request.TemplateParam = "{\"message\":\"" + message + "\"}"; SendSmsResponse response = client.GetAcsResponse(request); return Json(new { success = true, message = "短信发送成功" }); } catch (ServerException ex) { return Json(new { success = false, message = "短信发送失败:" + ex.Message }); } catch (ClientException ex) { return Json(new { success = false, message = "短信发送失败:" + ex.Message }); } } } ``` 注意将代码中的 AccessKeyId、AccessKeySecret、SignName 和 TemplateCode 替换成您的阿里云短信接口的配置信息。另外,由于短信模板中可能包含动态内容,因此 TemplateParam 参数应该根据实际情况填写。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值