阿里云短信服务

背景简介:

短信验证以及短信通知,目前已经应用的非常广泛,最近因项目需要,需要将原来的短信接口换成阿里云的的短信服务,原项目集成的短信服务能够实现短信的发送以及短信的验证整个过程,简单的来说,原来的短息服务,只需应用申请获取短信,短息服务器会发送短信到指定的手机,用户将验证码发送到短信服务商的服务器,服务器做出验证返回是否通过,而阿里云仅提供短信发送服务,需要自己开发短信的验证。下面简单的介绍一下:

1.获取阿里云AccessKey

用户->Accesskeys:需要自己创建一个AccessKey

2.创建短信签名:

阿里云控制台->短信服务->国内短信->签名管理: 创建自己的签名(签名主要是指应用的名字,如:中国移动,建设银行)

3.创建短信模板:

国内短信->模板管理:创建自己的短信通知模板(如:您正在申请手机注册,验证码为:${code},5分钟内有效!)

4.基于阿里云openAPI实现短信发送模块

注意:这里项目中需要导入aliyun-java-sdk-core-4.1.0.jar,额外注意:javaweb项目中,需要将aliyun-java-sdk-core-4.1.0.jar 以及gson-2.8.5.jar 导入到tomcat 的lib目录下,不然会出错。

 package Surpport;
import com.aliyuncs.CommonRequest;
import com.aliyuncs.CommonResponse;
import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.exceptions.ServerException;
import com.aliyuncs.http.MethodType;
import com.aliyuncs.http.ProtocolType;
import com.aliyuncs.profile.DefaultProfile; /*
pom.xml
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>aliyun-java-sdk-core</artifactId>
<version>4.0.3</version>
</dependency>
*/ /****
* 阿里云短信验证工具
* 调用示例:
* SmsUtil sednMessage = new SmsUtil();
* sednMessage.SendSMS("手机号", "需要发送的验证码");
* @author finch
*
*/
public class SmsUtil { /*************阿里云短信验证参数*****************/
/******
* 参考 阿里云 OpenAPI
*
*/
public String accessKeyId ="创建的AccessKeyId"; //AccessKeyId
public String accessSecret="获取的AccessKeySecret"; //AccessKeySecret
public String SignName ="短信签名"; //短信签名名称
public String TemplateCode ="SMS_短信模板ID"; //短信模板ID public void SendSMS(String PhoneNumber,String RandomCode) { DefaultProfile profile = DefaultProfile.getProfile("default",
accessKeyId,accessSecret); IAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest();
request.setProtocol(ProtocolType.HTTPS);
request.setMethod(MethodType.POST);
request.setDomain("dysmsapi.aliyuncs.com"); request.setVersion("2017-05-25");
request.setAction("SendSms"); //短信发送类型:
request.putQueryParameter("PhoneNumbers", PhoneNumber); //接受短信的号码
request.putQueryParameter("SignName", SignName); //短信签名
request.putQueryParameter("TemplateCode",TemplateCode ); //短信模板id
request.putQueryParameter("TemplateParam", "{\"code\":\""+RandomCode+"\"}"); //随机验证码
try { CommonResponse response = client.getCommonResponse(request);
System.out.println(response.getData()); //调用结果显示
} catch (ServerException e)
{
e.printStackTrace();
} catch (ClientException e)
{ e.printStackTrace(); } }
}

5.实现短信验证流程

阿里云短信验证_基于阿里云OpenAPI实现的更多相关文章

  1. 阿里云短信验证~JAVA后台

    maven :中的 pom.xml添加 <dependency> <groupId>com.aliyun</groupId> <artifactId>a ...

  2. Springboot下实现阿里云短信验证功能(含代码)

    Springboot下实现阿里云短信验证功能 一 开通阿里云短信服务 阿里云官网注册登录 找到短信服务并开通 打开短信服务的管理台 在国内消息那栏中添加签名管理和模板管理(按照格式要求去写) 在右上角 ...

  3. PHP阿里大鱼短信验证

    PHP阿里大鱼短信验证 第一步 登陆阿里大于注册账号,在用户管理中心创建应用,确定AppKEY和App Secret还有配置签名 第二步 在应用管理中选择SDK下载,或者直接点击http://down ...

  4. 阿里云短信验证解决方案(java版)(redis存储)

    最近搞了一个互联网项目的注册,需要写一个手机号验证(由于之前没有轮子,只能自己摸索了); 1:基本思路: 1>购买了阿里云短信服务->下载阿里云短信发送demo(java版); 2> ...

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

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

  6. Thinkphp5使用阿里大于短信验证

    现在各种平台登录验证很多时候会使用短信验证,快捷安全,有很多平台提供短信验证服务,相比较而言阿里大于价格比较便宜,快捷,所以在在千锋日常的php教学中多以此为例来说明短信验证的使用.下面我们在tp5中 ...

  7. 阿里云短信验证使用(PHP)

    1.登陆阿里云后台,事先添加签名和模板 2.使用composer下载阿里云SDK composer require alibabacloud/sdk 在PHP7.0下安装需要提前安装curl扩展 -c ...

  8. 【云短信】腾讯&阿里

    腾讯 : https://github.com/qcloudsms/qcloudsms_csharp 安装nuget包: using qcloudsms_csharp; using System.Co ...

  9. 使用springBoot完成阿里云短信验证

    <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot ...

随机推荐

  1. noip模拟赛 蒜头君的兔子

    分析:直接暴力算有30分,像斐波那契那样推式子算有60分,如果想要得到100分就要用一种数列题的常见优化--矩阵了. 当前的兔子数和十年内的兔子数有关,我们需要1个1*11的矩阵,来记录当前为0岁.1 ...

  2. msp430入门编程03

    msp430的C标识符和关键字 msp430入门学习 msp430入门编程

  3. ubuntu14.04 配置网络

    ubuntu14.04 配置网络的练习 本文参考的资料: https://blog.csdn.net/liu782726344/article/details/52912797. 感谢作者的分享! 打 ...

  4. Python基础之 二

    字符编码: 二进制记录:128 64 32 16 8 4 2 1 1    1   1  1  1 1 1 1  = 8位 ascii 编码:占1个字节8位,只能表示256个符号,主要用于显示英语和其 ...

  5. HAProxy教程收集

    市面上HA的教程不是很多,基本都是基于LVS+HA实践的打包资料. 要最权威的文档应该去官方. 官方文档入口: http://www.haproxy.org/#docs 中文文档收集: http:// ...

  6. spring依赖注入中获取JavaBean

    一.这个接口有什么用? 当一个类实现了这个接口(ApplicationContextAware)之后,这个类就可以方便获得ApplicationContext中的所有bean.换句话说,就是这个类可以 ...

  7. JSP的过滤器

    以下内容引用自http://wiki.jikexueyuan.com/project/jsp/writing-filters.html: Servlet和JSP过滤器都是Java类,可以在Servle ...

  8. HDOJ 4259 Double Dealing

    找每一位的循环节.求lcm Double Dealing Time Limit: 50000/20000 MS (Java/Others)    Memory Limit: 32768/32768 K ...

  9. html实现类似excel的复杂表格,及导出到excel

    1. excellentexport.js https://github.com/jmaister/excellentexport/tree/2.0.3 2.fiddle example  https ...

  10. android 到底是什么决定了app的名称 application label activity label

    原文地址:http://blog.csdn.net/lamp_zy/article/details/7878979 原来博主的博客的名字仅仅是application label表示菜比的我没有搜到,然 ...