准备工作
  1. 阿里云上申请短信服务
  2. 创建短信应用、签名、短信模板并申请审核,如果审核不通过,接口是调不通的。
  3. 配置专门用来发短信的accessKeyId和 accessKeySecret
开始开发

下载安装sdk

安装这两个SDK就可以了,下面就是写代码了 代码来自官方 demo

  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using Aliyun.Acs.Core;
  5. using Aliyun.Acs.Core.Exceptions;
  6. using Aliyun.Acs.Core.Profile;
  7. using Aliyun.Acs.Dysmsapi.Model;
  8. using Aliyun.Acs.Dysmsapi.Model.V20170525;
  9. namespace Application.SMS
  10. {
  11. public class SmsHelper
  12. {
  13. /// <summary>
  14. /// 发送阿里云短信
  15. /// </summary>
  16. /// <param name="mobile"></param>
  17. /// <param name="templateCode"></param>
  18. /// <param name="json"></param>
  19. private static void SendAcs(string mobile, string templateCode, dynamic json, int ourid)
  20. {
  21. if (string.IsNullOrEmpty(mobile))
  22. {
  23. throw new Exception("mobile不能为空");
  24. }
  25. if (string.IsNullOrEmpty(templateCode))
  26. {
  27. throw new Exception("templateCode不能为空");
  28. }
  29. string product = "Dysmsapi";//短信API产品名称(短信产品名固定,无需修改)
  30. string domain = "dysmsapi.aliyuncs.com";//短信API产品域名(接口地址固定,无需修改)
  31. string accessKeyId = "xxxxxxxxxx";//你的accessKeyId,参考本文档步骤2
  32. string accessKeySecret = "xxxxxxxxx";//你的accessKeySecret,参考本文档步骤2
  33. IClientProfile profile = DefaultProfile.GetProfile("cn-hangzhou", accessKeyId, accessKeySecret);
  34. //IAcsClient client = new DefaultAcsClient(profile);
  35. // SingleSendSmsRequest request = new SingleSendSmsRequest();
  36. //初始化ascClient,暂时不支持多region(请勿修改)
  37. DefaultProfile.AddEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
  38. IAcsClient acsClient = new DefaultAcsClient(profile);
  39. SendSmsRequest request = new SendSmsRequest();
  40. try
  41. {
  42. //必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为1000个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式,发送国际/港澳台消息时,接收号码格式为00+国际区号+号码,如“0085200000000”
  43. request.PhoneNumbers = mobile;
  44. //必填:短信签名-可在短信控制台中找到
  45. request.SignName = "xxxxxx";
  46. //必填:短信模板-可在短信控制台中找到,发送国际/港澳台消息时,请使用国际/港澳台短信模版
  47. request.TemplateCode = templateCode;
  48. //可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为
  49. request.TemplateParam = JsonHelper.ToJSON(json);// "{\"name\":\"Tom\",\"code\":\"123\"}";
  50. //可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者
  51. request.OutId = ourid.ToString();// "yourOutId";
  52. //请求失败这里会抛ClientException异常
  53. SendSmsResponse sendSmsResponse = acsClient.GetAcsResponse(request);
  54. if (sendSmsResponse.BizId == null)
  55. throw new ApplicationException(sendSmsResponse.Message);
  56. System.Console.WriteLine(sendSmsResponse.Message);
  57. }
  58. catch (ServerException ex)
  59. {
  60. throw new ApplicationException(ex.Message);
  61. //System.Console.WriteLine("Hello World!");
  62. }
  63. catch (ClientException ex)
  64. {
  65. throw new ApplicationException(ex.Message);
  66. //System.Console.WriteLine("Hello World!");
  67. }
  68. }
  69. }
  70. }

.netcore 使用阿里云短信的更多相关文章

  1. 使用Node.js调用阿里云短信的发送以及接收

    为了使用Node.js调用阿里云短信服务,我自己写了个npm包, 目前实现了: 使用Node.js调用阿里云短信服务,发送短信: 使用Node.js调用阿里云短信服务以及MNS服务,接收用户上行短信 ...

  2. php 阿里云短信服务及阿里大鱼实现短信验证码的发送

    一:使用阿里云的短信服务 ① 申请短信签名 ②申请短信模板 ③创建Access Key,获取AccessKeyId 与 AccessKeySecret.(为了安全起见,这里建议使用子用户的Access ...

  3. 阿里云短信服务bug

    接入阿里云短信服务,在springboot中写测试方法,执行到 IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou ...

  4. 阿里云短信服务调用例子-Python

    阿里云短信服务调用例子 阿里云官方文档https://helpcdn.aliyun.com/document_detail/101893.html 首先需要安装阿里云PythonSDK(下面是pyth ...

  5. ThinkPHP3.2.3框架下接入阿里云短信服务接口实现:注册登录

    首先介绍下短信注册登录流程: 注册页面点击获取手机号验证码按钮,用jquery的click事件POST或GET方法把手机号发送到后台控制器: 后台控制器创建函数,收到手机号后生成随机码,例如:6位的随 ...

  6. THINKPHP3.2.3增加阿里云短信接口思路整理

    https://help.aliyun.com/document_detail/55359.html?spm=5176.product44282.4.7.O4lc1n 阿里云短信服务地址,感冒的下载看 ...

  7. ThinkPHP5.0手把手实现手机阿里云短信验证

    阿里云短信服务介绍阿里云短信服务就是以前的阿里大于,不过现在融合得到阿里云平台了.首先,你需要注册一个阿里云账号,这个自行解决. 仅用于测试使用官方送的代金券够用了.相关配置1.开通阿里云Access ...

  8. zabbix短信(阿里云短信平台)与邮件报警

    环境说明 操作系统 centos7 zabbix_server zabbix 4.0.3 python 3.6.5 短信平台 阿里云短信 zabbix_server配置信息 1 [root@cp-hb ...

  9. python 阿里云短信群发推送

    本篇文章是使用Python的Web框架Django提供发送短信接口供前端调用,Python版本2.7 阿里云入驻.申请短信服务.创建应用和模板等步骤请参考:阿里云短信服务入门 1.下载sdk 阿里云短 ...

随机推荐

  1. Linux--shell的基本特性--01

    1.bash的基本特性: a) 命令展开:date命令—— 基于date命令创建命令 查看系统时钟:date 查看硬件时钟: clock .hwclock (常常同步系统时钟与硬件时钟) cal 查看 ...

  2. iOS项目之多Targets和多环境配置

    项目中使用的同一套代码,但需要开发多个app,app中内容基本上相同,只有一些小小的区别,例如名称等等,每个app中又需要分开发环境(Dev).测试环境(Test).正式环境(Pro). 下面就开始搭 ...

  3. (十五)c#Winform自定义控件-键盘(二)

    前提 入行已经7,8年了,一直想做一套漂亮点的自定义控件,于是就有了本系列文章. 开源地址:https://gitee.com/kwwwvagaa/net_winform_custom_control ...

  4. 如何调教你的博客Episode2——移动端支持和UI美化

    这个系列的文章是我在搭建博客园博客时所经历的过程. 在上一期如何调教你的博客Episode1——修改整体样式中,我们通过添加CSS样式,修改了页面的总体布局.但将文章发出之后,博客的布局就出现问题了: ...

  5. Microsoft Access数据库操作类(C#)

    博文介绍的Microsoft Access数据库操作类是C#语言的,可实现对Microsoft Access数据库的增删改查询等操作.并且该操作类可实现对图片的存储,博文的最后附上如何将Image图片 ...

  6. nginx配置ssl证书实现https加密请求详解

    原文链接:http://www.studyshare.cn/software/details/1175/0 一.加密方式 1.对称加密 所谓对称加密即:客户端使用一串固定的秘钥对传输内容进行加密,服务 ...

  7. three.js基础前置知识

    这一节是纯理论知识,用于介绍three.js的入门概念,也就是开发前需要准备的理论基础. 一,三剑客 当然就是scene,camera,renderer这三个基本要素. scene是一个用于容纳三维空 ...

  8. 玩转 SpringBoot 2 快速搭建 | IntellJ IDEA篇

     IntellJ IDEA 介绍  IntelliJ IDEA 简称 IDEA,目前被认为是最好用的开发Java 语言开发工具之一.不过是收费的.和其同类型的工具有 Eclipse 和 MyEclip ...

  9. C笔记_动态库和静态库

    1. 静态库 创建 工程属性配置中设置为lib静态库,编辑.h文件和.c文件,生成即可. 使用 方法一: 添加工程的头文件目录:工程---属性---配置属性---c/c++---常规---附加包含目录 ...

  10. Selenium3 + Python3自动化测试系列九——cookie操作

    cookie操作 一.Cookie操作 WebDriver提供了操作Cookie的相关方法,可以读取.添加和删除cookie信息. 使用方法: 1:get_cookies() ,获取cookie信息 ...