阿里云短信验证_基于阿里云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目录下,不然会出错。

 1 package Surpport;
 2 import com.aliyuncs.CommonRequest;
 3 import com.aliyuncs.CommonResponse;
 4 import com.aliyuncs.DefaultAcsClient;
 5 import com.aliyuncs.IAcsClient;
 6 import com.aliyuncs.exceptions.ClientException;
 7 import com.aliyuncs.exceptions.ServerException;
 8 import com.aliyuncs.http.MethodType;
 9 import com.aliyuncs.http.ProtocolType;
10 import com.aliyuncs.profile.DefaultProfile;
11
12
13 /*
14 pom.xml
15 <dependency>
16   <groupId>com.aliyun</groupId>
17   <artifactId>aliyun-java-sdk-core</artifactId>
18   <version>4.0.3</version>
19 </dependency>
20 */
21
22 /****
23  *  阿里云短信验证工具
24  *  调用示例:
25  *  SmsUtil sednMessage = new SmsUtil();
26  *  sednMessage.SendSMS("手机号", "需要发送的验证码");
27  * @author finch
28  *
29  */
30 public class SmsUtil {
31
32
33     /*************阿里云短信验证参数*****************/
34     /******
35      * 参考 阿里云 OpenAPI
36      *
37      */
38     public String accessKeyId ="创建的AccessKeyId";     //AccessKeyId
39     public String accessSecret="获取的AccessKeySecret";  //AccessKeySecret
40     public String  SignName ="短信签名";                    //短信签名名称
41     public String  TemplateCode ="SMS_短信模板ID";         //短信模板ID
42
43
44
45     public void SendSMS(String PhoneNumber,String RandomCode) {
46
47
48  DefaultProfile profile = DefaultProfile.getProfile("default",
49  accessKeyId,accessSecret); IAcsClient client = new DefaultAcsClient(profile);
50
51     CommonRequest request = new CommonRequest();
52     request.setProtocol(ProtocolType.HTTPS);
53     request.setMethod(MethodType.POST);
54     request.setDomain("dysmsapi.aliyuncs.com"); request.setVersion("2017-05-25");
55     request.setAction("SendSms"); //短信发送类型:
56     request.putQueryParameter("PhoneNumbers", PhoneNumber); //接受短信的号码
57     request.putQueryParameter("SignName", SignName); //短信签名
58     request.putQueryParameter("TemplateCode",TemplateCode ); //短信模板id
59     request.putQueryParameter("TemplateParam", "{\"code\":\""+RandomCode+"\"}"); //随机验证码
60    try { CommonResponse response = client.getCommonResponse(request);
61         System.out.println(response.getData()); //调用结果显示
62         }  catch (ServerException e)
63       {
64             e.printStackTrace();
65        } catch (ClientException e)
66    { e.printStackTrace(); }
67
68     }
69 }

5.实现短信验证流程

原文地址:https://www.cnblogs.com/fench/p/10976461.html

时间: 2024-10-29 19:12:05

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

阿里云短信验证

一.开通阿里云短信服务,申请签名和模板,记住accessKeyId和accessKeySecret,具体操作可搜到 二.点击短信服务的帮助文档,点击旧版的开发指南,(新版未试用),下载java版本,访问dysms_java\java\api_demo\alicom-dysms-api\src\main\java\com\alicom\dysms\api 中的smsdemo文件,导入dysms_java\java\api_demo\alicom-dysms-api\libs的两个包,然后就可以按照

今天记录下那个阿里云短信验证

如果你是小白,那么看我这个绝对没问题,手把手教学...... 首先你打开这个链接:https://help.aliyun.com/document_detail/59210.html?spm=a2c4g.11186623.6.550.3fb415ec0B2n0o 打代码之前,你要做的准备工作就是:下面4步. 入驻阿里云---开通短信服务----获取AccessKey--------创建签名和模版 当你完成了上面4步,emmm..... 打开eclipse 新建maven工程(quickstart

阿里大于短信服务_异常_01_InvalidTimeStamp.Expired

一.异常信息 dm.aliyuncs.com InvalidTimeStamp.Expired Specified time stamp or date value is expired. 二.异常原因 该错误含义为:用户发出请求的时间(由请求中携带的Timestamp参数标识)和服务器接收到请求的时间之差不在15分钟内. 一般出现该错误都是因为调用代码中时间/时区设置有误导致,请检查下相关设置是否正确. 如果需要协助,可通过钉钉群和工单方式联系技术支持. 三.解决方法 修改服务器的时区 查看和

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

阿里云短信服务调用例子 阿里云官方文档https://helpcdn.aliyun.com/document_detail/101893.html 首先需要安装阿里云PythonSDK(下面是python3版本的安装方式) pip install aliyun-python-sdk-core-v3 阿里云官方调用例子 #!/usr/bin/env python #coding=utf-8 from aliyunsdkcore.client import AcsClient from aliyun

阿里云短信服务(JAVA)

一,前言 ? 短信验证码想必大家都不陌生,在很多网站,APP中都有使用到.比如登录,注册,身份校验等场景.不过通常情况下,短信服务都是外包给第三方公司的,接下来向大家分享如何使用阿里的短信服务. 二,云通信 ? 阿里云官网:https://www.aliyun.com/ ? 忘记说了,没有账号的可以直接使用阿里旗下的任何一款账号进行登录,支付宝,淘宝,钉钉等都可以,或者也可以单独进行注册,这里就不再讲述如何注册了. ? 登录成功以后,首页如下,在上方搜索框中搜索短信服务: ? ? 1,点击短信服

阿里云 短信消息api 示例 (附:阿里云控制台的消息服务,集成到codeigniter )

<?php require_once(dirname(dirname(dirname(__FILE__))).'/act/alisms/mns-autoloader.php'); use AliyunMNS\Client; use AliyunMNS\Topic; use AliyunMNS\Constants; use AliyunMNS\Model\MailAttributes; use AliyunMNS\Model\SmsAttributes; use AliyunMNS\Model\B

阿里大鱼短信接口

阿里大于短信验证实现完整代码分享 http://bbs.2ccc.com/topic.asp?topicid=515649 补充:跨平台的例子可以去csdn下载这位大神的demo http://download.csdn.net/detail/hansxia888/9603061 1 这两天搞那个sign,搞的烦躁,问了一下论坛的那位同学,开口500. 2 唉,delphi这种偏门的就是这样,啥都贵. 3 后来想想用C#按阿里那边的帮助文档写了个,可以正常发送.然后把C#翻译成Delphi就可以

阿里通信[短信验证码]

阿里通信-短信验证码 1.阿里云短信服务官方文档使用指引: https://help.aliyun.com/document_detail/59210.html 2.登录阿里通信 1)登录链接:https://www.aliyun.com/product/sms 2)可以使用淘宝账号登录 3)登录成功后,进入到这个界面:https://dysms.console.aliyun.com/dysms.htm#/overview 界面: 阿里通信[短信验证码] 原文地址:https://www.cnb

composer阿里云短信服务不支持传参为数值

composer 阿里云短信服务使用 xuying/aliyun_mns /** * TODO SMS SERVICE * @param $tmp * @param $moblie * @param $name * @param int $len * @return int */private function mns($tmp,$moblie,$name,$len=4){ $count=[]; for($i =0;$i<$len; $i++){ $count[] =rand(1, 9); }