实现手机验证码注册功能

实现手机验证码注册功能调用阿里云短信服务 实现手机验证码注册功能 验证码注册

大家好,欢迎来到IT知识分享网。

简要说明:在开发软件时涉及登录注册,我们想实现手机验证码注册,这里以调用阿里云短信服务,使用androidstdio  java语言为例

一、申请短信服务

1.进入阿里云平台,选择短信服务

实现手机验证码注册功能

2.申请签名

实现手机验证码注册功能

3.申请模版

实现手机验证码注册功能

注:上述两个过程可以在系统提示下用手机钉钉进行申请,每次审核需要一两个小时;

4.在个人信息那个获取用户密钥,用于访问阿里云API

实现手机验证码注册功能

二、代码实现

1.选择快速学习使用,点击调用API发送,跳转界面

实现手机验证码注册功能

2.选择你需要使用的代码示例,这里我选java

实现手机验证码注册功能

3.根据你申请的签名模版和密钥修改代码参数即可

三、安卓测试

注:安卓中需要在线程里执行此操作

1.需要导入阿里云相关sdk包,如:

implementation(files("libs\\alipay-sdk-java803.jar")) implementation(files("libs\\aliyun-java-sdk-core-3.3.1.jar")) implementation(files("libs\\aliyun-java-sdk-dysmsapi-1.0.0.jar")) implementation(files("libs\\alipay-sdk-java803-source.jar"))

2.实现一个发送验证码的类

​ //导入阿里云短信服务SDK import com.aliyun.auth.credentials.Credential; import com.aliyun.auth.credentials.provider.StaticCredentialProvider; import com.aliyun.sdk.service.dysmsapi.models.*; import com.aliyun.sdk.service.dysmsapi.*; import com.google.gson.Gson; import darabonba.core.client.ClientOverrideConfiguration; import java.util.concurrent.CompletableFuture; import java.util.concurrent.ExecutionException; //导入随机数生成函数库 import java.util.Random; //线程实现短信验证码的请求发送 public class SendSms extends Thread{ private String code; private String phoneNumber; public void setPhoneNumber(String phoneNumber,String code) { this.phoneNumber = phoneNumber; this.code = code; } //线程主体 public void run() { try { StaticCredentialProvider provider = StaticCredentialProvider.create(Credential.builder() .accessKeyId("填自己的")//你的密钥 .accessKeySecret("填自己的") .build()); AsyncClient client = AsyncClient.builder() .region("cn-beijing") .credentialsProvider(provider) .overrideConfiguration( ClientOverrideConfiguration.create() .setEndpointOverride("dysmsapi.aliyuncs.com") ) .build(); SendSmsRequest sendSmsRequest = SendSmsRequest.builder() .signName("填自己的")//短信签名 .templateCode("填自己的")//短信模版 .phoneNumbers(this.phoneNumber)//测试手机号 .templateParam("{\"code\":\""+this.code+"\"}")//验证码 .build(); CompletableFuture<SendSmsResponse> response = client.sendSms(sendSmsRequest); SendSmsResponse resp = response.get(); System.out.println(new Gson().toJson(resp)); client.close(); } catch (ExecutionException e) { throw new RuntimeException(e); } catch (InterruptedException e) { throw new RuntimeException(e); } } } ​

 3.调用此类即可

实现手机验证码注册功能

 四、最后说明 

1.短信中的验证码数字自己设置,可以自己写一个生成指定位的随机数函数,即随机验证码;

2.记得给自己阿里云账户充几块钱,发一次短信要扣一点点费用,当然也有免费的如MobTech实现验证码注册,但是我写安卓的时候,选择的安卓版本太新了,那个官方提供的代码不适用了,又不想改安卓配置了,就改用阿里云了;

3.程序简单逻辑:用户点击注册进入注册页面,用户输入手机号,账号密码,点击获取验证码,调用你实现的类发送随机验证码给用户,用户输入验证码后,验证验证码是否正确,正确的话把用户填写的账号密码信息存入服务器数据库账户表中;

4.对于把账户信息存入服务器数据库可以参考我的另一篇文章:架设阿里云服务器及数据库;

5.不同开发平台,不同语言,阿里云都给出了模版,你需要做的就是导入包修改参数(签名,模版和密钥)即可,整体框架是确定的;

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/114314.html

(0)
上一篇 2025-12-09 13:26
下一篇 2025-12-09 13:45

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信