Java实现手机验证码----阿里云
Java对接阿里云短信验证码接口
之前尝试了挺多的验证码服务平台,不过数字签名一直不能通过,需要什么证书之类的, 不过现在发现阿里云这个平台的短信验证操作简单,而且使用起来也比较方便。 那现在就来详细的说说吧。
- 首先去阿里云的官网注册一下,用支付宝扫码注册认证很快。阿里云官网
- 登录成功后,在搜索框直接搜索 短信服务—>
- 进入到管理控制台,他会出现让你立即开通,点击立即开通就可以了。
- 然后找到右上角点击头像—>AccessKey管理---->点击创建AccessKey---->接收短信验证码---->创建AccessKey成功
- 添加签名和模板,然后等待审核,审核大概两个小时,很快的
- 第一次要记得充值!!!只需要冲一块就行,能用挺久的。
- 接下来就上具体的代码实现了
(1.1)导包maven导包方式
<dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>4.0.6</version>
</dependency>
<dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-dysmsapi</artifactId><version>1.1.0</version>
</dependency>
(1.2)导包java导包方式
将所需要的包放在lib文件夹下—>项目右击build path—>add libraries—>add JARs—>选中OK—>apply
所需要的架包下载地址
(2)Randoms.java 随机生成4位数的验证码
package com.yjj.random;import java.util.Random;public class Randoms {public static String count(){Random r=new Random();String num="";for(int i=0;i<4;i++){num+=r.nextInt(10);}return num;}
}
(3)SendCode .java具体实现短信发送的功能.
package com.yjj.util;import com.aliyuncs.DefaultAcsClient;
import com.aliyuncs.IAcsClient;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsRequest;
import com.aliyuncs.dysmsapi.model.v20170525.SendSmsResponse;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.http.MethodType;
import com.aliyuncs.profile.*;
import com.yjj.random.Randoms;public class SendCode {@SuppressWarnings("deprecation")public static void sendCode() throws ClientException {//初始化ascClient需要的几个参数final String product = "Dysmsapi";//短信API产品名称(短信产品名固定,无需修改)final String domain = "dysmsapi.aliyuncs.com";//短信API产品域名(接口地址固定,无需修改)//替换成你的AK//你的accessKeyId,参考本文档步骤2final String accessKeyId = "LTAI4GDLdCWJP3vVq5CC";//你的accessKeySecret,参考本文档步骤2final String accessKeySecret = "6vmOi0oNsythZtvJWsxQJOIg";//初始化ascClient,暂时不支持多region(请勿修改)IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);IAcsClient acsClient = new DefaultAcsClient(profile);//组装请求对象SendSmsRequest request = new SendSmsRequest();//使用post提交request.setMethod(MethodType.POST);//必填:待发送手机号。支持以逗号分隔的形式进行批量调用,批量上限为1000个手机号码,批量调用相对于单条调用及时性稍有延迟,验证码类型的短信推荐使用单条调用的方式;发送国际/港澳台消息时,接收号码格式为国际区号+号码,如“85200000000”request.setPhoneNumbers("17645433691");//必填:短信签名-可在短信控制台中找到request.setSignName("天天生鲜购物商城");//必填:短信模板-可在短信控制台中找到,发送国际/港澳台消息时,请使用国际/港澳台短信模版request.setTemplateCode("SMS_192532073");//可选:模板中的变量替换JSON串,如模板内容为"亲爱的${name},您的验证码为${code}"时,此处的值为request.setTemplateParam("{\"name\":\"Tom\", \"code\":\""+ Randoms.count() +"\"}");//可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者request.setOutId("yourOutId");//请求失败这里会抛ClientException异常SendSmsResponse sendSmsResponse = acsClient.getAcsResponse(request);System.out.println("发送了");if(sendSmsResponse.getCode() != null && sendSmsResponse.getCode().equals("OK")) {System.out.println("发送成功");System.out.println(Randoms.count()+"\n"+sendSmsResponse.getCode());}}public static void main(String[] args) throws ClientException {sendCode();}
}
最后提供官方文档
Java实现手机验证码----阿里云相关推荐
- 腾讯云短信服务实现 Java 发送手机验证码(SpringBoot+Redis 实现)
文章目录 腾讯云短信服务实现 Java 发送手机验证码(SpringBoot+Redis 实现) 1.打开腾讯云短信服务 2.创建短信签名 3.创建短信正文模板 4.等待全部审核完毕即可 5.发送短信 ...
- java发送手机验证码实现
正文 今天来用java实现手机验证码的发送. 短信平台有很多,中国网建提供的SMS短信通,注册免费5条短信,3条彩信, http://sms.webchinese.cn/ 但是刚才试了,第一次用官方提 ...
- JAVA发送短信-阿里云
JAVA发送短信-阿里云 操作步骤 1.登录并进入阿里云控制台 2.创建账户访问密钥accesskeys 根据提示创建出一个accesskey即可 3.在左侧菜单中搜索出短信服务 4.在短信服务的页面 ...
- 商用短链平台_第8章_ 账号微服务注册模块+短信验证码+阿里云OSS开发实战
商用短链平台_第8章_ 账号微服务注册模块+短信验证码+阿里云OSS开发实战 文章目录 商用短链平台_第8章_ 账号微服务注册模块+短信验证码+阿里云OSS开发实战 第八章 账号微服务注册模块+短信验 ...
- Java实现短信验证码(阿里云短信服务)
前言: 很多时候我们做的项目都需要上图这样的验证码来帮助我们完成更好的功能,比如:什么登录注册,忘记密码需要发送手机验证码之类的啊...下面分享我今天通过阿里云短信服务实现的短信验证码,操作都很简单, ...
- jeecg 手机注册 阿里云短信API 【 阿里云短信发送验证码 平台配置和项目中使用】
文章目录 jeecg 项目效果展示 短息通知页面入口 代码中调用短信api 配置和代码 API中的重要参数配置项: 阿里控制台注册 注册签名 注册短信模板 阿里云短信发送验证码配置和项目使用 je ...
- java spring-boot-starter-mail邮件和阿里云华为云短信发送全套
短信API都是需要对接平台的,平台会提供参考代码比较简单,但是邮件是免费的,除了springboot,还能用javaxmail(我记得是,大家可以查查资料) 文章目录 前言 一.spring-boot ...
- java rds 数据库_JDBC(java数据库连接)和阿里云RDS数据库
这两天挖洞的时候,拿到了一个配置生产环境的源码,看一下就能看出来是配置 首先给大家看下源码: 因为我暂时还没有学过java,所以刚看到这个,就没有这个概念,只以为是配置个 首先我们来了解下JDBC:J ...
- 智能验证码 阿里云人机验证的使用(PHP)
尝试了一下午,弄成功了下阿里云的人机验证功能,感觉文档说得有点跳脱,做个记录. 现在的验证码越来越简单人性化,阿里云的人机验证结合了鼠标轨迹记录获取,点击触点分析等,使得原来需要劳心费神输文字点汉字的 ...
最新文章
- Fisher判别推导 Logistic回归推导 SVM推导
- 不能错过的RTS经典:《蘑菇战争2》是如何做玩法创新的?
- C语言没有引用,只有指针
- crontab 指令笔记
- SVN 回滚(撤回)提交的代码
- 高等组合学笔记--完结篇
- NumPy:数组计算
- 撸一串经典的detection tracking
- obs中音频和视频的同步
- CentOS7静态IP地址配置
- xampp 无法启动appche mysql
- 多路IO复用与异步IO
- 诡异事件之自定义UINavigationController
- 学习笔记(一)---Docker概述
- knn闽南语是什么意思_林北是什么意思什么梗 林北梗的出处是什么
- 赵小楼《天道》《遥远的救世主》深度解析(93)究竟真理真Xiang的踪迹
- 【UVA 12657】移动盒子 Boxes in a Line
- 解决mac 休眠后唤醒死机问题
- uniapp-map基本使用
- 骚操作!公司招聘运营称已婚双休未婚单休
热门文章
- Docker下运行两个ClickHouse容器后 ReplicatedMergeTree引擎借助Zookeeper将数据无法同步的解决方案,提示错误为“DNS_ERROR”
- echarts扇形仪表盘
- python简单体育竞技模拟_2019-05-12 Python之模拟体育竞赛
- The Accidental HFT Firm
- 安卓和IOS系统下字体样式的不同
- 决策树--信息增益,信息增益比,Geni指数
- 引导未来:区块链经济七大设计原则
- day81_babasport第七天
- SourceTree报错git -c diff.mnemonicprefix=false fatal: Unable to create ‘D:/xxx/.git/index.lock‘: File
- 启用nat模式 路由模式_如何在HTML电子邮件中启用暗模式:您需要了解的一切。...