阿里云短信验证_基于阿里云OpenAPI实现
阿里云短信服务
背景简介:
短信验证以及短信通知,目前已经应用的非常广泛,最近因项目需要,需要将原来的短信接口换成阿里云的的短信服务,原项目集成的短信服务能够实现短信的发送以及短信的验证整个过程,简单的来说,原来的短息服务,只需应用申请获取短信,短息服务器会发送短信到指定的手机,用户将验证码发送到短信服务商的服务器,服务器做出验证返回是否通过,而阿里云仅提供短信发送服务,需要自己开发短信的验证。下面简单的介绍一下:
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实现的更多相关文章
- 阿里云短信验证~JAVA后台
maven :中的 pom.xml添加 <dependency> <groupId>com.aliyun</groupId> <artifactId>a ...
- Springboot下实现阿里云短信验证功能(含代码)
Springboot下实现阿里云短信验证功能 一 开通阿里云短信服务 阿里云官网注册登录 找到短信服务并开通 打开短信服务的管理台 在国内消息那栏中添加签名管理和模板管理(按照格式要求去写) 在右上角 ...
- PHP阿里大鱼短信验证
PHP阿里大鱼短信验证 第一步 登陆阿里大于注册账号,在用户管理中心创建应用,确定AppKEY和App Secret还有配置签名 第二步 在应用管理中选择SDK下载,或者直接点击http://down ...
- 阿里云短信验证解决方案(java版)(redis存储)
最近搞了一个互联网项目的注册,需要写一个手机号验证(由于之前没有轮子,只能自己摸索了); 1:基本思路: 1>购买了阿里云短信服务->下载阿里云短信发送demo(java版); 2> ...
- ThinkPHP5.0手把手实现手机阿里云短信验证
阿里云短信服务介绍阿里云短信服务就是以前的阿里大于,不过现在融合得到阿里云平台了.首先,你需要注册一个阿里云账号,这个自行解决. 仅用于测试使用官方送的代金券够用了.相关配置1.开通阿里云Access ...
- Thinkphp5使用阿里大于短信验证
现在各种平台登录验证很多时候会使用短信验证,快捷安全,有很多平台提供短信验证服务,相比较而言阿里大于价格比较便宜,快捷,所以在在千锋日常的php教学中多以此为例来说明短信验证的使用.下面我们在tp5中 ...
- 阿里云短信验证使用(PHP)
1.登陆阿里云后台,事先添加签名和模板 2.使用composer下载阿里云SDK composer require alibabacloud/sdk 在PHP7.0下安装需要提前安装curl扩展 -c ...
- 【云短信】腾讯&阿里
腾讯 : https://github.com/qcloudsms/qcloudsms_csharp 安装nuget包: using qcloudsms_csharp; using System.Co ...
- 使用springBoot完成阿里云短信验证
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot ...
随机推荐
- 前端开发:CSS3
CSS介绍: CSS能够使页面具有美观一致的效果,并且能够让内容与格式分离,利于扩展 所以,CSS解决了下面两个问题: 1. 将HTML页面的内容与格式分离: 2. 提高web开发的工作效率. CSS ...
- MU Puzzle HDU - 4662
Suppose there are the symbols M, I, and U which can be combined to produce strings of symbols called ...
- SpringBoot常用注解总结
在SpringBoot框架中,注解做为一种隐式配置,极大的简化了之前xml文件的配置方式.SpringBoot中包含许多种类的注解,这里对在SpingBoot项目中经常使用到的一些注解的进行大致的归纳 ...
- operamasks—omBorderLayout布局
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...
- Ubuntu 16.04硬盘有坏道,开机显示blk_update_request:I/0 error
可以尝试以下方式解决: 1.检查坏道(效果明显,但是比较慢,检查出来并没有什么用,只是知道有坏块) sudo badblocks -s -v -o /root/bb.log /dev/sda1 2.快 ...
- 纤程(FIBER)
Indy 10 还包含对纤程的支持.纤程是什么?简单来说,它也是 一个“线程”,但是它是由代码控制的,而不是由操作系统控制的.实际上,可以认为线程 是一个高级纤程.纤程和 Unix 用户线程(Unix ...
- CCNA参考链接
http://www.cisco.com/c/en/us/support/docs/lan-switching/vtp/10558-21.html http://www.cisco.com/c/en/ ...
- hdu 4291 矩阵幂 循环节
http://acm.hdu.edu.cn/showproblem.php?pid=4291 凡是取模的都有循环节-----常数有,矩阵也有,并且矩阵的更奇妙: g(g(g(n))) mod 109 ...
- ajax请求锁屏功能
我们有时候在进行ajax请求的时候希望页面不允许点击,等请求结束之后才可以进行点击,那么可以写: $(".cloudos-container").ajaxStart($.block ...
- 【MySQL】Win7下修改MySQL5.5默认编码格式
一般安装MySQL程序过程中,有一步骤是选择MySQL的默认编码格式的,程序默认为Latin1编码格式,当然也可以选择第三个选项,手动选择gbk或utf8编码格式,以支持中文数据.如下图: 现在问题出 ...