利用阿里云短信验证码登录

article/2025/8/19 18:11:07

这段时间准备做一个电商网站的小项目,在登录这方面,我想跟现在主流的登录想做成相似的功能,比如利用手机验证码登录,或者是扫描二维码登录,然后就在就在网站找了点资料今天来分享下,一来是给自己做个笔记,以后在想做类似的功能也方便点,再者如果有想做类似功能的可用参考我的方法,其实流程挺简单的,但是自己在上面走了点弯路,浪费了时间。

 

一、手机短信登录

1、首先需要找到一个短信服务的平台

我在做以前找了很多短信服务的平台,大部分平台都是需要有基本资金才可以开启短信服务的,但同时很多也是提供免费的实现机会差不多几十次到一百多次不等吧,我最后选择的是阿里云,虽然没有提供免费是机会,但是他是完全可以不需要订阅套餐可以按条计费  0.045元,一块钱就可以发二十多条,自己做项目测试是完全小意思的。

 

2、申请短信服务,加上设置短信模板和签名  以及获取到    accesskey的数据

额,这个不想多说,反正填写的时候最好稍微用点心

 

3、下载阿里云的jar包,以及gson包

在阿里上其实下载aliyun的SDK,我在网上看教程别人都是在Maven上配置的,我想在普通的web项目中配置,而且通过简单的实验也成功了,但是,我如果能获取到信息发送成功所返回的信息呢(json格式的字符串),我就想到了可以通过Gson进行解析,先开始导的是2.4的包,不行,我就感觉是版本问题,在网站下 2.7 2.8的包也都不行,程序还是报异常,我就在想是不是不仅仅是对Gson包的依赖,还需要别的包,我于是想通过Maven我可以配置它的坐标最后找出他所依赖的包。

对,就是这么多,但是一个包是那个的显眼,对,就是上面的那个gson包,他的版本是2.8.2的,如果我在重新导入这个gson包,完美解决,别的包也暂时不需要多管

4、实例演示

短信信息的实体类

package com.tk.utils;public class Code {private String Message;private String RequestId;private String BizId;private String Code;public String getMessage() {return Message;}public void setMessage(String message) {Message = message;}public String getRequestId() {return RequestId;}public void setRequestId(String requestId) {RequestId = requestId;}public String getBizId() {return BizId;}public void setBizId(String bizId) {BizId = bizId;}public String getCode() {return Code;}public void setCode(String code) {Code = code;}public String toString() {return "Code [Message=" + Message + ", RequestId=" + RequestId+ ", BizId=" + BizId + ", Code=" + Code + "]";}public Code(String message, String requestId, String bizId, String code) {super();Message = message;RequestId = requestId;BizId = bizId;Code = code;}public Code() {super();}
}

发送短信的工具类(主要)

package com.tk.utils;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.profile.DefaultProfile;
import com.google.gson.Gson;/*** 发送短信的工具类* @data :2019-4-26上午11:09:27* @author :田坤*/
public class SendUtils {/*** 发送短息* @param phone			用户的电话号码* @param phoneCode		随机生成的验证码* @return*/public static String Sendnote(String phone,String phoneCode) {Code code = null;Gson gson = new Gson();DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "LTAI17FyEpL8t85J", "0fkgO4dDtZv4L5UYFFW5uEEDhV11y7");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("RegionId", "cn-hangzhou");//要发生给的用户的电话号码request.putQueryParameter("PhoneNumbers", phone);//申请的短信签名request.putQueryParameter("SignName", "阿普商城");//申请的短信模板request.putQueryParameter("TemplateCode", "SMS_164267218");//给用户发送的验证码request.putQueryParameter("TemplateParam", "{\"code\":\""+phoneCode+"\"}");request.putQueryParameter("SmsUpExtendCode", "9999");try {CommonResponse response = client.getCommonResponse(request);//将响应返回的json数据的字符串转化成java实体(Code类)code = (Code) gson.fromJson(response.getData(),com.tk.utils.Code.class);System.out.println(code.toString());System.out.println(code.getMessage());} catch (ServerException e) {e.printStackTrace();} catch (ClientException e) {e.printStackTrace();}return code.getMessage();}
}

 

 

 

 

 

 

 


http://chatgpt.dhexx.cn/article/WAVngBPf.shtml

相关文章

阿里云短信验证码+Java开发

使用阿里云短信验证码 准备1.注册账号2.免费试用 一些设置1.测试一下2.添加自己的签名和模板3.添加用户&用户组 代码1.使用示例2.导jar包2.写代码最后 准备 1.注册账号 2.免费试用 连接: [link]https://free.aliyun.com/ntms/free/personal.html?handletrue. 之后会有一…

阿里云短信验证码SMS

前言 将电话以及验证码存入redis,并设置过期时间 一.注册阿里云账号 注册并登录阿里云账号。您可以前往阿里云官方网站(https://www.aliyun.com/),点击右上角的"登录"按钮,然后选择"注册"创建一个…

阿里云短信验证码购教程(Java演示)

一、在阿里云云市场购买试用的短信服务 打开阿里云,进入云市场 找到适合自己的商品进行购买 本人使用以下商品:短信服务 点击购买,测试完成后,联系客服。配置你的专属短信模版 本人接下来演示 测试模版2: 二、根据演示实例进行…

短信验证--阿里云短信验证码接口

前言 公司最近项目需要一个手机验证码的功能,任务确定后,倍感亚历山大,以为和第三方对接的都好麻烦,查阿里的API、网上大神写的博客,各种查之后才发现,简单的一塌糊涂,这里想说个问题&#xff…

tp5阿里云短信验证码

1.登录阿里云账号之后 首先鼠标移动到你的头像上 点击AccessKey之后 创建 2.找到短信服务这里 申请签名 和 模板 3.之后找到 帮助文档 -> 下载php SDK 我是点击的开发指南(旧版)下载的 php SDK 非轻量版的 下载解压之后extend/alisms 之后在app…

【阿里云短信验证码】麻瓜教程~~~从注册---申请---代码---执行

阿里云短信验证码 当然啦,学习任何东西第一步就是去注册当前网站的账号。 阿里云的官网:https://www.aliyun.com/?utm_contentse_1008364713 ◆【1.先注册账号,后登录,会有实名认证直接用支付宝扫码授权即可。】 ◆【2.进入后界…

【Java阿里云短信验证码实现】

阿里云新版SDK的基础使用 前言:最近在做开发中因为需要用到短信验证,在进行选择后选择了阿里云的短信验证平台(付费:简短普通短信价格在0.04元一条)。由于官网的帮助文档过于详细无法快速找到重点内容,并且…

springboot 手机发送阿里云短信验证码

1.请先pom引入阿里云依赖 <dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>4.5.16</version></dependency><dependency><groupId>com.aliyun</groupId>&…

springboot 使用shiro集成阿里云短信验证码

目录 1.阿里云短信验证码服务 2.发送短信验证码 3.shiro配置多个realm 4.验证短信验证码 5.一些修改思路 引言&#xff1a;短信验证码是通过发送验证码到手机的一种有效的验证码系统&#xff0c;主要用于验证用户手机的合法性及敏感操作的身份验证。在注册和修改密码时需要…

thinkphp6 +阿里云短信验证码

一、登录阿里云开通短信验证码 1、正常添加&#xff0c;等待审核成功&#xff0c;获取自己的账号的access_key 以及access_secret 进到下边界面创建就行&#xff0c;保存好 二、下载阿里云SDK包 composer require alibabacloud/sdk 三、thinkphp6 基本操作 1、三个文件 第一…

阿里云短信验证码发送

1&#xff0c;下载sdk composer require alibabacloud/dysmsapi-20170525 2.0.9 2&#xff0c;封装短信发送类 <?phpnamespace App\Http\business; use AlibabaCloud\SDK\Dysmsapi\V20170525\Dysmsapi; use Darabonba\OpenApi\Models\Config; use AlibabaCloud\SDK\Dysm…

JAVA实现阿里云短信验证码发送

详情可参考阿里云官方文档&#xff1a; 开始使用 - 阿里云SDK - 阿里云 首先进入阿里云开通短信服务 并且申请阿里云签名和模板 redis安装详见 centos redis安装及相关命令_lanan_dream的博客-CSDN博客_centos redis 安装 1、配置类中引入redis配置&#xff1a;固定写法&#…

新版阿里云发送短信验证码详解

一、申请短信服务步骤 首先进入阿里云控制台&#xff0c;点击左侧产品与服务&#xff0c;找到短信服务。 第一次进入会有新手引导&#xff0c;这里主要介绍一下大致步骤和易错点 申请短信签名和模板 短信签名一般是企业或者组织名的简写&#xff0c;主要是告知收信人自己是谁…

使用阿里云发送短信验证码

目录 一、用户注册登录流程 二、使用阿里云发送短信验证码 ⭐生成密钥 ⭐将密钥配置到项目中 ⚪新建properties文件并填入相应信息 ⚪pom配置 ​⚪ 测试代码 ⚪添加签名 ​⚪添加短信发送的模板 &#x1f4a7;验证码防盗刷监控 一、用户注册登录流程 二、使用阿里…

通用阿里云的短信验证码(详细)

阿里云手机短信验证码 第一步 登录阿里云开放平台 1、进入阿里云开放平台---->点击控制台 2、点击AccessKey管理 3、点击之后会弹出提示&#xff0c;选择开始使用子用户 4、新建一个用户组&#xff0c;然后按要求填写即可 5、创建一个用户&#xff0c;按要求填写内容&…

《设计模式系列》- 代理模式

有情怀&#xff0c;有干货&#xff0c;微信搜索【三太子敖丙】关注这个有一点点东西的程序员。 本文 GitHub https://github.com/JavaFamily 已收录&#xff0c;有一线大厂面试完整考点、资料以及我的系列文章。 设计模式已经跟大家分享很多了常见的模式了&#xff0c;感兴趣的…

Nginx代理tomcat

为什么需要为tomcat配置nginx反向代理&#xff1f; 1.当服务器上同时拥有nginx与tomcat时&#xff0c;tomcat修改8080端口为80会冲突 2.tomcat不更改监听端口8080即可使用nginx的80端口 3.Nginx对于静态的请求速度上要优于Tomcat&#xff0c;Tomcat不擅长做高并发的静态文件请…

GPU虚拟化

GPU 虚拟化技术 须知: 文章内容大程度参考B站王利明老师对《GPU虚拟化技术分享》的主题演讲 视频链接: https://b23.tv/uQKBpcK 1 GPU 和软件架构 GPU可以用于图形渲染&#xff0c;GPU 作为加速图形绘制的芯片时&#xff0c;它主要面向的产品主要是会集中在 PC 和游戏两个市场…

代理模式(四):代理模式效果与适用场景

15.7 代理模式效果与适用场景 代理模式是常用的结构型设计模式之一&#xff0c;它为对象的间接访问提供了一个解决方案&#xff0c;可以对对象的访问进行控制。代理模式类型较多&#xff0c;其中远程代理、虚拟代理、保护代理等在软件开发中应用非常广泛。 15.7.1 模式优点 代理…

Nginx 反向代理、负载均衡、虚拟主机

文章目录 一、反向代理1、代理原理2、正/反向代理的区别&#xff08;1&#xff09;正向代理&#xff08;2&#xff09;反向代理 3、配置Nginx-Proxy&#xff08;1&#xff09;代理模块&#xff08;2&#xff09;代理配置&#xff08;3&#xff09; proxy 代理实例 二、负载均衡…