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

本文涉及的产品
短信服务,100条 3个月
短信服务,200条 3个月
数字短信套餐包(仅限零售电商行业),100条 12个月
简介: 本文介绍了在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
    按照上面的步骤基本就完成了
    剩下的就是迁移到各自的项目问题。
相关文章
|
3月前
|
存储 NoSQL 数据库
认证服务---整合短信验证码,用户注册和登录 ,密码采用MD5加密存储 【二】
这篇文章讲述了在分布式微服务系统中添加用户注册和登录功能的过程,重点介绍了用户注册时通过远程服务调用第三方服务获取短信验证码、使用Redis进行验证码校验、对密码进行MD5加密后存储到数据库,以及用户登录时的远程服务调用和密码匹配校验的实现细节。
认证服务---整合短信验证码,用户注册和登录 ,密码采用MD5加密存储 【二】
|
8天前
|
前端开发 JavaScript 安全
HTML+CSS+JS密码灯登录表单
通过结合使用HTML、CSS和JavaScript,我们创建了一个带有密码强度指示器的登录表单。这不仅提高了用户体验,还帮助用户创建更安全的密码。希望本文的详细介绍和代码示例能帮助您在实际项目中实现类似功能,提升网站的安全性和用户友好性。
19 3
|
1月前
|
Java
Java 登录输入的验证码
Java 登录输入的验证码
24 1
|
1月前
|
C#
C# 图形验证码实现登录校验代码
C# 图形验证码实现登录校验代码
75 2
|
30天前
|
JavaScript
Node.js单点登录SSO详解:Session、JWT、CORS让登录更简单(二)
Node.js单点登录SSO详解:Session、JWT、CORS让登录更简单(一)
30 0
|
30天前
|
存储 JSON JavaScript
Node.js单点登录SSO详解:Session、JWT、CORS让登录更简单(一)
Node.js单点登录SSO详解:Session、JWT、CORS让登录更简单(一)
84 0
|
2月前
|
存储 JSON 前端开发
node使用token来实现前端验证码和登录功能详细流程[供参考]=‘很值得‘
本文介绍了在Node.js中使用token实现前端验证码和登录功能的详细流程,包括生成验证码、账号密码验证以及token验证和过期处理。
49 0
node使用token来实现前端验证码和登录功能详细流程[供参考]=‘很值得‘
|
3月前
|
JavaScript
Nest.js 实战 (七):如何生成 SVG 图形验证码
这篇文章介绍了使用NestJS实现Session验证的图形验证码功能的具体步骤。首先,通过powershell代码安装依赖pnpmaddsvg-captcha。然后,在控制器中使用TypeScript代码引入相关依赖,创建一个图形验证码的接口,当请求该接口时,返回一张随机图片验证码。最后,进行了效果演示。
Nest.js 实战 (七):如何生成 SVG 图形验证码
|
2月前
|
JavaScript 前端开发
js登录注册简单tab切换页面(含前台表单验证)
文章介绍了如何使用HTML、CSS和JavaScript创建一个简单的登录注册页面,并实现Tab切换效果。包括了表单验证,点击登录或注册按钮时,可以切换显示相应的表单。同时提供了完整的前端代码和实现效果图。
|
3月前
|
JavaScript 前端开发
js随机验证码
js随机验证码
39 2