Node.js 制作验证码API

原创 黄良钵  2018-05-06 14:26  阅读 49 次 评论 0 条

利用 svg-captcha 插件制作验证码,首先安装 svg-captcha 插件:

  1. npm i --save svg-captcha

然后在建一个 svgCaptcha.js 文件,文件内容:

  1. // 获取验证码
  2. const svgCaptcha = require('svg-captcha');
  3. module.exports = callback => {
  4.     let codeConfig = {
  5.         size: 5,// 验证码长度
  6.         ignoreChars: '0o1i', // 验证码字符中排除 0o1i
  7.         noise: 2, // 干扰线条的数量
  8.         height: 45
  9.     }
  10.     let captcha = svgCaptcha.create(codeConfig);
  11.     let sessionCaptcha = captcha.text.toLowerCase(); //存session用于验证接口获取文字码
  12.     let codeData = {
  13.         img:captcha.data
  14.     }
  15.     callback(sessionCaptcha,codeData);
  16. }

callback返回验证码 (sessionCaptcha) 和验证码svg图片 (codeData) ;

使用在需要的API文件里:

  1. const getCode = require('../model/svgCaptcha.js');
  2. // 获取验证码
  3. exports.getCode = (req, res, next) => {
  4.     getCode(function (code,img) {
  5.         //存session用于验证接口获取文字码
  6.         req.session.captcha = code;
  7.         let data = {};
  8.         if (code && img){
  9.             data = {
  10.                 code: 200,
  11.                 msg: '获取成功',
  12.                 data: img
  13.             }
  14.         } else {
  15.             data = {
  16.                 code: 400,
  17.                 msg: '获取失败',
  18.                 data: img
  19.             }
  20.         }
  21.         res.json(data);
  22.     })
  23. }

Node.js 制作验证码API

关注我们:请关注一下我们的微信公众号:扫描二维码黄良钵博客的公众号,公众号:HLB_Blog
版权声明:本文为原创文章,版权归 黄良钵 所有,欢迎分享本文,转载请保留出处!

发表评论


表情