nest.js + sms 实现短信验证码登录

本文涉及的产品
国际/港澳台短信套餐包,全球plus 100条 6个月
短信服务,200条 3个月
短信服务,100条 3个月
简介: 本文介绍了在Nest.js框架中集成短信验证码登录的实现方案,详细阐述了使用阿里云短信服务的配置流程、资质申请、短信模板设置,并提供了API调用示例和工程代码的运行步骤。

文章目录

  • 一、前言
    • 1、方案概述
  • 二、教程
    • 1、阿里云配置
      • (1)购买短信服务
      • (2)、短信测试
      • (3)、资质申请
      • (4)、通用设置
    • 2、获取API代码示例
    • 3、运行工程代码

一、前言

最近做些网站的时候,需要使用到手机验证码,遂写和大家分享一下使用 nodejs 实现短信验证码登录的方案, 通过对该方案的实现大家可以可以对 nodejs 及其相关生态有一个更深入的理解.

1、方案概述

为了更高效的开发 nodejs 应用, 这里我选择 nest.js 作为服务端框架, 同时使用腾讯云的短信服务:
短信验证码登录具体流程如下:

  1. 用户访问网站登录页面, 输入手机号触发验证码
  2. node服务器收到请求后, 拼接所需参数(具体在下文会详细介绍), 请求第三方短信服务平台
  3. 第三方短信服务平台校验, 通过后下发对应短信
  4. 用户在网站输入收到的验证码, 请求登录接口完成登录

二、教程

1、阿里云配置

(1)购买短信服务

短信服务
在这里插入图片描述
在使用阿里云短信服务之前,需要先购买短信服务。
测试阶段可以先购买9.6块的套餐
在这里插入图片描述

(2)、短信测试

短信快速学习和测试
使用手机测试一下短信是否能正常发送
在这里插入图片描述
发送的短信参考如下:
在这里插入图片描述

(3)、资质申请

测试发送正常后,我们目前还是不能随意向其他手机发送短信。需要完成下面的资质申请
具体流程

  1. 资质申请(主体)
  2. 签名申请(某个网站、APP等)
  3. 模板申请(前面两步完成后,去写这个模板)

完成这上面的三步后,阿里云这一边的前期资质和短信模板就算完成了。
时间花费主要是上面两步,大致需要在工作时间过3个小时左右,模板申请就比较快了,做完前面两个,这个正常情况是申请过一俩分钟就过了。(ps:我是这酱紫)

在这里插入图片描述

(4)、通用设置

在这里插入图片描述
这三个全部开了

2、获取API代码示例

短信服务-发送短信API示例
在这里插入图片描述
填入接受短信的手机号码、签名和短信模板
在这里插入图片描述

3、运行工程代码

在这里插入图片描述
这个没啥操作
具体步骤:

  1. 填入SK、ASK和sms信息
  2. 安装node和yarn
  3. yarn install
  4. yarn dev
    按照上面的步骤基本就完成了
    剩下的就是迁移到各自的项目问题。
相关文章
|
4月前
|
前端开发 JavaScript
验证码(原生js加canvas绘图)
验证码(原生js加canvas绘图)
30 0
|
1月前
|
JavaScript
Nest.js 实战 (七):如何生成 SVG 图形验证码
这篇文章介绍了使用NestJS实现Session验证的图形验证码功能的具体步骤。首先,通过powershell代码安装依赖pnpmaddsvg-captcha。然后,在控制器中使用TypeScript代码引入相关依赖,创建一个图形验证码的接口,当请求该接口时,返回一张随机图片验证码。最后,进行了效果演示。
Nest.js 实战 (七):如何生成 SVG 图形验证码
|
22天前
|
JavaScript 前端开发
js随机验证码
js随机验证码
31 2
|
16天前
|
JavaScript 前端开发
Next js:点击登录显示登录表单,点击注册显示注册表单的功能
本文提供了一个Next.js中使用React状态管理实现点击按钮切换显示登录和注册表单的功能示例,包括创建`authform.tsx`组件和在页面组件中引入使用的方法。
|
3月前
|
JavaScript
|
3月前
|
前端开发 JavaScript
阿里云验证码2.0 验证时报错 前端页面获取的验证参数有问题,动态JS加载失败,请问怎么解决啊?急,急,急。
用户反馈校验时遇到错误,日志显示验证码参数获取异常。采用无痕验证,失败后,返回`{captchaResult:false,bizResult:false}`,未触发滑块二次验证。
|
4月前
|
前端开发 JavaScript
验证码(原生js加canvas绘图)
验证码(原生js加canvas绘图)
31 0
|
4月前
|
JavaScript 前端开发
JS生成登录验证码
JS生成登录验证码
29 2
|
4月前
|
存储 JavaScript
如何用JS实现退出登录?
如何用JS实现退出登录?
79 1
|
4月前
|
存储 JavaScript 前端开发
原生JS如何实现验证码
原生JS如何实现验证码
46 0