تولید رمز عبور یکبار مصرف با استفاده از speakeasy ، Nest.js و MongoDB

عکس پروفایل نویسنده

در اینجا ، ما یک جریان برای OTP (یک بار رمز عبور) برای ثبت نام کاربر و همچنین مسدود کردن حساب کاربر پس از بیش از حداکثر تلاش مجدد برای otp نادرست ، طراحی و توسعه داده ایم.

ما مراحل تولید ، تأیید صحت و مسدود کردن حساب کاربر را طی خواهیم کرد.

Step 1:
OTP Generation:
Code (Part-I):

src/auth/auth.controller.ts
    
import {
  Controller,
  Post,
  Req,
  UseGuards,
  Get,
  Body,
  BadRequestException,
  Param,
  NotFoundException,
} from "@nestjs/common";
import { JwtAuthGuard } from "./auth.guard";
import { LoggedInToken } from "../users/objects/login-user.dto";
import { AuthService } from "./auth.service";
import * as speakeasy from "speakeasy";
import { optSecret } from "../common/constants/config";
import {
  UNKNOWN_PARAM,
  EMAIL_NOT_FOUND,
  OTP_ERROR,
  EXISTS,
  OTP_NOT_EXPIRED,
  NEW_PASSWORD_AND_CONFIRM_NEW_PASSWORD_ERROR,
  OTP_TIME_OUT,
  TOKEN_ALREADY_USED,
  EMAIL_ERROR,
  BLOCKED_ACCOUNT_ERROR,
} from "../common/constants/string";
import { plainToClass } from "class-transformer";
import { success } from "../common/base/httpResponse.interface";
import { UserDto } from "../users/objects/create-user.dto";
import { OtpEmail, UserCycloanAccountBlockedEmail } from "../users/objects/user.registered.email";
import {
  ForgetPasswordOtpEmail,
 ...
سئو PBN | خبر های جدید سئو و هک و سرور