SVG 图形验证码

【Npm svg-captcha】:https://www.npmjs.com/package/svg-captcha

路由控制

  • UserController.js
const express = require("express")
const UserController = express.Router();
const UserService = require("../services/UserService")

UserController.get("/captcha",UserService.createCaptcha)

module.exports = UserController
js

服务实现

  • UserService.js
const validator = require("express-validator");
const svgCaptcha = require("svg-captcha")

export const createCaptcha = [
    validator.query("captchaKey", "验证码Key不能为空").isLength({min: 1}),
    (req, res, next) => {
        //校验参数
        let validationResult = validator.validationResult(req);
        if (!validationResult.isEmpty()) return Result.result(res, Result.invalidParams(validationResult.array()))
        let {captchaKey} = req.query

        let captcha = svgCaptcha.create(SVGConfig);
        RedisService().set(KEY.CAPTCHA + captchaKey, captcha.text)

        res.type('svg');
        res.status(200).send(captcha.data);
    }]
js
打赏
  • 微信
  • 支付宝
评论
来发评论吧~
···

歌手: