阿里云——Java实现手机短信验证码功能

1年前 (2023) 程序员胖胖胖虎阿
108 0 0

阿里云——Java实现手机短信验证码功能

目录

  • 如何实现短信验证码功能
    • 1.准备工作
      • 1.1 注册 阿里云 账号,并完成实名认证。找到短信服务功能。
      • 1.2 开通短信服务
      • 1.3 签名与模板
      • 1.4 获取AccessKey
      • 1.5 打开短信控制台,通过API测试功能
    • 2.Java SDK 示例
      • 2.1 添加maven依赖
      • 2.2 阿里云官方配置

如何实现短信验证码功能

通过手机短信发送验证码,是最普遍、最安全验证用户真实身份的方式。目前,短信验证码广泛应用于用户注册、密码找回、登录保护、身份认证、随机密码、交易确认等应用场景。
本文通过调用API开发一个短信验证码为例,带您了解如何实现短信验证码功能。

1.准备工作

1.1 注册 阿里云 账号,并完成实名认证。找到短信服务功能。

阿里云——Java实现手机短信验证码功能

1.2 开通短信服务

阿里云——Java实现手机短信验证码功能

1.3 签名与模板

阿里云——Java实现手机短信验证码功能

阿里云不支持个人申请签名和模板,这里可以不申请,可以先使用阿里云提供的免费的测试签名与模板

1.4 获取AccessKey

阿里云——Java实现手机短信验证码功能
阿里云——Java实现手机短信验证码功能

  • 生成AccessKey
    阿里云——Java实现手机短信验证码功能
  • 查看Secret,得到 AccessKey IDAccessKey Secret(后面会用到)
    阿里云——Java实现手机短信验证码功能

1.5 打开短信控制台,通过API测试功能

  • 打开快速学习页面,点击API发送测试按钮
  • 单击绑定测试手机号,在对话框输入接收测试短信的手机号和获取的验证码
    阿里云——Java实现手机短信验证码功能
  • 点击调用API发送短信
    阿里云——Java实现手机短信验证码功能
  • 点击发起调用,将通过该平台直接调用发送接口发送短信
    阿里云——Java实现手机短信验证码功能
  • 这时手机就会收到测试短信

2.Java SDK 示例

2.1 添加maven依赖

  • 官方提供的版本
    阿里云——Java实现手机短信验证码功能
  • 创建一个maven项目,将下面代码添加到pom.xml文件中
<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>dysmsapi20170525</artifactId>
  <version>2.0.9</version>
</dependency>

2.2 阿里云官方配置

  • 创建一个Sample 类
  • 复制官方提供的代码,进行一些修改,如下:
// This file is auto-generated, don't edit it. Thanks.

import com.aliyun.dysmsapi20170525.Client;
import com.aliyun.tea.*;
import com.aliyun.dysmsapi20170525.*;
import com.aliyun.dysmsapi20170525.models.*;
import com.aliyun.teaopenapi.*;
import com.aliyun.teaopenapi.models.*;

public class Sample {

    public static void main(String[] args_) throws Exception {
        Config config = new Config()
                //这里修改为我们上面生成自己的AccessKey ID
                .setAccessKeyId("LTAI5tLdwwPpCrJbzMdTdQ7")
             
                //这里修改为我们上面生成自己的AccessKey Secret
                .setAccessKeySecret("jnP9no9KhtsE4kVbqbV40JKCksCqy3");
        // 访问的域名
        config.endpoint = "dysmsapi.aliyuncs.com";
        Client client = new Client(config);
        SendSmsRequest sendSmsRequest = new SendSmsRequest()
                .setSignName("阿里云短信测试")//短信签名
                .setTemplateCode("SMS_154950909")//短信模板
                .setPhoneNumbers("157xxxxxxxx")//这里填写接受短信的手机号码
                .setTemplateParam("{\"code\":\"1234\"}");//验证码
        // 复制代码运行请自行打印 API 的返回值
        client.sendSms(sendSmsRequest);
    }
}

运行此代码,就会收到如下的短信:
【阿里云短信测试】您正在使用阿里云短信测试服务,体验验证码是:1234,如非本人操作,请忽略本短信!


下一篇文章将在ssm的基础上对该功能进行优化!!!

版权声明:程序员胖胖胖虎阿 发表于 2023年9月2日 下午2:48。
转载请注明:阿里云——Java实现手机短信验证码功能 | 胖虎的工具箱-编程导航

相关文章

暂无评论

暂无评论...