前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >验证码服务使用指南

验证码服务使用指南

作者头像
用户9184480
发布2024-12-07 12:27:00
发布2024-12-07 12:27:00
11400
代码可运行
举报
文章被收录于专栏:云计算linux云计算linux
运行总次数:0
代码可运行

验证码服务使用指南

1 部署验证码服务

1.1 基础环境

Java 1.8+

Maven3.3.9+

1.2 安装Redis

参考“Redis安装指南”

1.3 部署验证码服务
1.3.1 下载源码

使用git从远程下载验证码服务代码(开源)。

1.3.2 使用idea打开项目

使用idea打开上一步下载的sailing目录,下图是sailing在idea的工程结构。

代码语言:javascript
代码运行次数:0
复制
git clone https://gitee.com/qawine_base/sailing.git
验证码服务使用指南_金融
验证码服务使用指南_金融
1.3.3 开通腾讯云短信服务

本服务中的短信发送使用了腾讯云短信服务,生产环境需要注册腾讯云开通短信服务:

  1. 开通腾讯云短信服务
  • 开通短信服务成功后,获取 SDKAppID 和 AppKey 云短信应用 SDKAppID 和 AppKey 可在 短信控制台 的应用信息里获取。如您尚未添加应用,请登录 短信控制台 添加应用。
  • 申请签名并确认审核通过 一个完整的短信由短信签名和短信正文内容两部分组成,短信签名需申请和审核,签名可在 短信控制台的相 应服务模块【内容配置】中进行申请,详细申请操作请参见 创建签名。发送国际短信时,允许不携带签名。
  • 申请模板并确认审核通过 短信或语音正文内容模板需申请和审核,模板可在 短信控制台 的相应服务模块【内容配置】中进行申请,详细申请操作请参见 创建正文模板。
  1. 配置短信参数
  • 打开项目中sailing/src/main/resources/application.yml
  • 将腾讯云短信服务获取到参数做如下配置:
代码语言:javascript
代码运行次数:0
复制
sms:
  qcloud:
    appId: 14000000
    appKey: 36ff7sd14d0d2342344cdf335cc25052
    templateId: 234323
    sign: 签名

appId:上边第1步开通短信服务成功后获取SDKAppID appKey:上边第1步开通短信服务成功后获取AppKey sign:上边第2步申请签名 templateId:上边第3步申请模板

1.3.4 控制台获取验证码

如果暂时没有申请到腾讯云短信服务,可以临时将验证码输出到控制台。 修改sailing/src/main/java/com/yh/sailing/handler/SmsNumberVerificationHandler.java

代码语言:javascript
代码运行次数:0
复制
@Override    
String confusion(Map<String, Object> payload, String key, String code) {    
    String mobile = String.valueOf(payload.get("mobile"));        
    // 使用腾讯云发送短信        
    //smsService.send(mobile, code, getEffectiveTime());        
    // 测试使用,在控制台输出验证码        
    smsService.sendOnConsole(mobile, code, getEffectiveTime());        
    return null;        
}
1.3.5 启动服务
验证码服务使用指南_java_02
验证码服务使用指南_java_02

2 使用验证码服务

2.1 发送验证码

参数名

参数类型

描述

name

string(query)

业务名称(使用何种方式的验证码,可选的有sms, img, mail等)

payload

application/json

业务携带参数,如手机号 、邮箱

effectiveTime

string(query)

验证信息有效期(秒)

验证码服务使用指南_金融_03
验证码服务使用指南_金融_03
  1. 点击’Try it out’, 填写参数进行测试
验证码服务使用指南_java-ee_04
验证码服务使用指南_java-ee_04

参数说明: name: 业务名称,短信的业务名称为"sms"。 payload:发送短信时这里要填写mobile,json格式。

查看返回的此次验证key:校验验证码时需要携带验证key和用户输入的验证码

发送验证码成功,可通过手机查看,如果在开发阶段可 在控制台查看验证码:

代码语言:javascript
代码运行次数:0
复制
INFO [http‐nio‐56085‐exec‐1][QCloudSmsService.java:37] ‐ 给手机号xxxxxxxxxxxx发送验证码:xxxx
2.2 校验验证码
  1. 接口说明:http://localhost:56085/sailing/swagger-ui.html#/verification-controller/verifyUsingPOST

参数名

参数类型

描述

name

string(query)

业务名称(使用何种方式的验证码,可选的有sms, img, mail等)

verificationCode

string(query)

验证码

verificationKey

string(query)

验证key

  1. 点击’Try it out’, 填写验证码和验证key进行测试
  2. 查看校验结果:返回true则为校验通过
  3. 点击’Try it out’, 填写验证码和验证key进行测试
  4. 查看校验结果:返回true则为校验通过
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 验证码服务使用指南
    • 1 部署验证码服务
      • 1.1 基础环境
      • 1.2 安装Redis
      • 1.3 部署验证码服务
    • 2 使用验证码服务
      • 2.1 发送验证码
      • 2.2 校验验证码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档